Skip to content
  1. Oct 28, 2022
    • Peter Zijlstra's avatar
      perf: Rewrite core context handling · bd275681
      Peter Zijlstra authored
      
      
      There have been various issues and limitations with the way perf uses
      (task) contexts to track events. Most notable is the single hardware
      PMU task context, which has resulted in a number of yucky things (both
      proposed and merged).
      
      Notably:
       - HW breakpoint PMU
       - ARM big.little PMU / Intel ADL PMU
       - Intel Branch Monitoring PMU
       - AMD IBS PMU
       - S390 cpum_cf PMU
       - PowerPC trace_imc PMU
      
      *Current design:*
      
      Currently we have a per task and per cpu perf_event_contexts:
      
        task_struct::perf_events_ctxp[] <-> perf_event_context <-> perf_cpu_context
             ^                                 |    ^     |           ^
             `---------------------------------'    |     `--> pmu ---'
                                                    v           ^
                                               perf_event ------'
      
      Each task has an array of pointers to a perf_event_context. Each
      perf_event_context has a direct relation to a PMU and a group of
      events for that PMU. The task related perf_event_context's have a
      pointer back to that task.
      
      Each PMU has a per-cpu pointer to a per-cpu perf_cpu_context, which
      includes a perf_event_context, which again has a direct relation to
      that PMU, and a group of events for that PMU.
      
      The perf_cpu_context also tracks which task context is currently
      associated with that CPU and includes a few other things like the
      hrtimer for rotation etc.
      
      Each perf_event is then associated with its PMU and one
      perf_event_context.
      
      *Proposed design:*
      
      New design proposed by this patch reduce to a single task context and
      a single CPU context but adds some intermediate data-structures:
      
        task_struct::perf_event_ctxp -> perf_event_context <- perf_cpu_context
             ^                           |   ^ ^
             `---------------------------'   | |
                                             | |    perf_cpu_pmu_context <--.
                                             | `----.    ^                  |
                                             |      |    |                  |
                                             |      v    v                  |
                                             | ,--> perf_event_pmu_context  |
                                             | |                            |
                                             | |                            |
                                             v v                            |
                                        perf_event ---> pmu ----------------'
      
      With the new design, perf_event_context will hold all events for all
      pmus in the (respective pinned/flexible) rbtrees. This can be achieved
      by adding pmu to rbtree key:
      
        {cpu, pmu, cgroup, group_index}
      
      Each perf_event_context carries a list of perf_event_pmu_context which
      is used to hold per-pmu-per-context state. For example, it keeps track
      of currently active events for that pmu, a pmu specific task_ctx_data,
      a flag to tell whether rotation is required or not etc.
      
      Additionally, perf_cpu_pmu_context is used to hold per-pmu-per-cpu
      state like hrtimer details to drive the event rotation, a pointer to
      perf_event_pmu_context of currently running task and some other
      ancillary information.
      
      Each perf_event is associated to it's pmu, perf_event_context and
      perf_event_pmu_context.
      
      Further optimizations to current implementation are possible. For
      example, ctx_resched() can be optimized to reschedule only single pmu
      events.
      
      Much thanks to Ravi for picking this up and pushing it towards
      completion.
      
      Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
      Co-developed-by: default avatarRavi Bangoria <ravi.bangoria@amd.com>
      Signed-off-by: default avatarRavi Bangoria <ravi.bangoria@amd.com>
      Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
      Link: https://lkml.kernel.org/r/20221008062424.313-1-ravi.bangoria@amd.com
      bd275681
  2. Oct 24, 2022
    • Linus Torvalds's avatar
      Linux 6.1-rc2 · 247f34f7
      Linus Torvalds authored
      v6.1-rc2
      247f34f7
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 05b4ebd2
      Linus Torvalds authored
      Pull kvm fixes from Paolo Bonzini:
       "RISC-V:
      
         - Fix compilation without RISCV_ISA_ZICBOM
      
         - Fix kvm_riscv_vcpu_timer_pending() for Sstc
      
        ARM:
      
         - Fix a bug preventing restoring an ITS containing mappings for very
           large and very sparse device topology
      
         - Work around a relocation handling error when compiling the nVHE
           object with profile optimisation
      
         - Fix for stage-2 invalidation holding the VM MMU lock for too long
           by limiting the walk to the largest block mapping size
      
         - Enable stack protection and branch profiling for VHE
      
         - Two selftest fixes
      
        x86:
      
         - add compat implementation for KVM_X86_SET_MSR_FILTER ioctl
      
        selftests:
      
         - synchronize includes between include/uapi and tools/include/uapi"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        tools: include: sync include/api/linux/kvm.h
        KVM: x86: Add compat handler for KVM_X86_SET_MSR_FILTER
        KVM: x86: Copy filter arg outside kvm_vm_ioctl_set_msr_filter()
        kvm: Add support for arch compat vm ioctls
        RISC-V: KVM: Fix kvm_riscv_vcpu_timer_pending() for Sstc
        RISC-V: Fix compilation without RISCV_ISA_ZICBOM
        KVM: arm64: vgic: Fix exit condition in scan_its_table()
        KVM: arm64: nvhe: Fix build with profile optimization
        KVM: selftests: Fix number of pages for memory slot in memslot_modification_stress_test
        KVM: arm64: selftests: Fix multiple versions of GIC creation
        KVM: arm64: Enable stack protection and branch profiling for VHE
        KVM: arm64: Limit stage2_apply_range() batch size to largest block
        KVM: arm64: Work out supported block level at compile time
      05b4ebd2
    • Jason A. Donenfeld's avatar
      Revert "mfd: syscon: Remove repetition of the regmap_get_val_endian()" · ca4582c2
      Jason A. Donenfeld authored
      This reverts commit 72a95859.
      
      It broke reboots on big-endian MIPS and MIPS64 malta QEMU instances,
      which use the syscon driver.  Little-endian is not effected, which means
      likely it's important to handle regmap_get_val_endian() in this function
      after all.
      
      Fixes: 72a95859
      
       ("mfd: syscon: Remove repetition of the regmap_get_val_endian()")
      Reviewed-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Cc: Lee Jones <lee@kernel.org>
      Signed-off-by: default avatarJason A. Donenfeld <Jason@zx2c4.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ca4582c2
    • Linus Torvalds's avatar
      kernel/utsname_sysctl.c: Fix hostname polling · 52826d3b
      Linus Torvalds authored
      Commit bfca3dd3
      
       ("kernel/utsname_sysctl.c: print kernel arch") added
      a new entry to the uts_kern_table[] array, but didn't update the
      UTS_PROC_xyz enumerators of older entries, breaking anything that used
      them.
      
      Which is admittedly not many cases: it's really just the two uses of
      uts_proc_notify() in kernel/sys.c.  But apparently journald-systemd
      actually uses this to detect hostname changes.
      
      Reported-by: default avatarTorsten Hilbrich <torsten.hilbrich@secunet.com>
      Fixes: bfca3dd3
      
       ("kernel/utsname_sysctl.c: print kernel arch")
      Link: https://lore.kernel.org/lkml/0c2b92a6-0f25-9538-178f-eee3b06da23f@secunet.com/
      Link: https://linux-regtracking.leemhuis.info/regzbot/regression/0c2b92a6-0f25-9538-178f-eee3b06da23f@secunet.com/
      Cc: Petr Vorel <pvorel@suse.cz>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      52826d3b
    • Linus Torvalds's avatar
      Merge tag 'perf_urgent_for_v6.1_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a7038524
      Linus Torvalds authored
      Pull perf fixes from Borislav Petkov:
      
       - Fix raw data handling when perf events are used in bpf
      
       - Rework how SIGTRAPs get delivered to events to address a bunch of
         problems with it. Add a selftest for that too
      
      * tag 'perf_urgent_for_v6.1_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        bpf: Fix sample_flags for bpf_perf_event_output
        selftests/perf_events: Add a SIGTRAP stress test with disables
        perf: Fix missing SIGTRAPs
      a7038524
    • Linus Torvalds's avatar
      Merge tag 'sched_urgent_for_v6.1_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c70055d8
      Linus Torvalds authored
      Pull scheduler fixes from Borislav Petkov:
      
       - Adjust code to not trip up CFI
      
       - Fix sched group cookie matching
      
      * tag 'sched_urgent_for_v6.1_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched: Introduce struct balance_callback to avoid CFI mismatches
        sched/core: Fix comparison in sched_group_cookie_match()
      c70055d8
    • Linus Torvalds's avatar
      Merge tag 'objtool_urgent_for_v6.1_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6204a81a
      Linus Torvalds authored
      Pull objtool fix from Borislav Petkov:
      
       - Fix ORC stack unwinding when GCOV is enabled
      
      * tag 'objtool_urgent_for_v6.1_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/unwind/orc: Fix unreliable stack dump with gcov
      6204a81a
    • Linus Torvalds's avatar
      Merge tag 'x86_urgent_for_v6.0_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 295dad10
      Linus Torvalds authored
      Pull x86 fixes from Borislav Petkov:
       "As usually the case, right after a major release, the tip urgent
        branches accumulate a couple more fixes than normal. And here is the
        x86, a bit bigger, urgent pile.
      
         - Use the correct CPU capability clearing function on the error path
           in Intel perf LBR
      
         - A CFI fix to ftrace along with a simplification
      
         - Adjust handling of zero capacity bit mask for resctrl cache
           allocation on AMD
      
         - A fix to the AMD microcode loader to attempt patch application on
           every logical thread
      
         - A couple of topology fixes to handle CPUID leaf 0x1f enumeration
           info properly
      
         - Drop a -mabi=ms compiler option check as both compilers support it
           now anyway
      
         - A couple of fixes to how the initial, statically allocated FPU
           buffer state is setup and its interaction with dynamic states at
           runtime"
      
      * tag 'x86_urgent_for_v6.0_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/fpu: Fix copy_xstate_to_uabi() to copy init states correctly
        perf/x86/intel/lbr: Use setup_clear_cpu_cap() instead of clear_cpu_cap()
        ftrace,kcfi: Separate ftrace_stub() and ftrace_stub_graph()
        x86/ftrace: Remove ftrace_epilogue()
        x86/resctrl: Fix min_cbm_bits for AMD
        x86/microcode/AMD: Apply the patch early on every logical thread
        x86/topology: Fix duplicated core ID within a package
        x86/topology: Fix multiple packages shown on a single-package system
        hwmon/coretemp: Handle large core ID value
        x86/Kconfig: Drop check for -mabi=ms for CONFIG_EFI_STUB
        x86/fpu: Exclude dynamic states from init_fpstate
        x86/fpu: Fix the init_fpstate size check with the actual size
        x86/fpu: Configure init_fpstate attributes orderly
      295dad10
    • Linus Torvalds's avatar
      Merge tag 'io_uring-6.1-2022-10-22' of git://git.kernel.dk/linux · 942e01ab
      Linus Torvalds authored
      Pull io_uring follow-up from Jens Axboe:
       "Currently the zero-copy has automatic fallback to normal transmit, and
        it was decided that it'd be cleaner to return an error instead if the
        socket type doesn't support it.
      
        Zero-copy does work with UDP and TCP, it's more of a future proofing
        kind of thing (eg for samba)"
      
      * tag 'io_uring-6.1-2022-10-22' of git://git.kernel.dk/linux:
        io_uring/net: fail zc sendmsg when unsupported by socket
        io_uring/net: fail zc send when unsupported by socket
        net: flag sockets supporting msghdr originated zerocopy
      942e01ab
  3. Oct 23, 2022
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-v6.1-rc2' of... · d47136c2
      Linus Torvalds authored
      Merge tag 'hwmon-for-v6.1-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
      
      Pull hwmon fixes from Guenter Roeck:
      
       - corsair-psu: Fix typo in USB id description, and add USB ID for new
         PSU
      
       - pwm-fan: Fix fan power handling when disabling fan control
      
      * tag 'hwmon-for-v6.1-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (corsair-psu) Add USB id of the new HX1500i psu
        hwmon: (pwm-fan) Explicitly switch off fan power when setting pwm1_enable to 0
        hwmon: (corsair-psu) fix typo in USB id description
      d47136c2
    • Linus Torvalds's avatar
      Merge tag 'i2c-for-6.1-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · cda5d920
      Linus Torvalds authored
      Pull i2c fixes from Wolfram Sang:
       "RPM fix for qcom-cci, platform module alias for xiic, build warning
        fix for mlxbf, typo fixes in comments"
      
      * tag 'i2c-for-6.1-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
        i2c: mlxbf: depend on ACPI; clean away ifdeffage
        i2c: fix spelling typos in comments
        i2c: qcom-cci: Fix ordering of pm_runtime_xx and i2c_add_adapter
        i2c: xiic: Add platform module alias
      cda5d920
    • Linus Torvalds's avatar
      Merge tag 'pci-v6.1-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · fd79882f
      Linus Torvalds authored
      Pull pci fixes from Bjorn Helgaas:
      
       - Revert a simplification that broke pci-tegra due to a masking error
      
       - Update MAINTAINERS for Kishon's email address change and TI
         DRA7XX/J721E maintainer change
      
      * tag 'pci-v6.1-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
        MAINTAINERS: Update Kishon's email address in PCI endpoint subsystem
        MAINTAINERS: Add Vignesh Raghavendra as maintainer of TI DRA7XX/J721E PCI driver
        Revert "PCI: tegra: Use PCI_CONF1_EXT_ADDRESS() macro"
      fd79882f
    • Linus Torvalds's avatar
      Merge tag 'media/v6.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 3272eb1a
      Linus Torvalds authored
      Pull missed media updates from Mauro Carvalho Chehab:
       "It seems I screwed-up my previous pull request: it ends up that only
        half of the media patches that were in linux-next got merged in -rc1.
      
        The script which creates the signed tags silently failed due to
        5.19->6.0 so it ended generating a tag with incomplete stuff.
      
        So here are the missing parts:
      
         - a DVB core security fix
      
         - lots of fixes and cleanups for atomisp staging driver
      
         - old drivers that are VB1 are being moved to staging to be
           deprecated
      
         - several driver updates - mostly for embedded systems, but there are
           also some things addressing issues with some PC webcams, in the UVC
           video driver"
      
      * tag 'media/v6.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (163 commits)
        media: sun6i-csi: Move csi buffer definition to main header file
        media: sun6i-csi: Introduce and use video helper functions
        media: sun6i-csi: Add media ops with link notify callback
        media: sun6i-csi: Remove controls handler from the driver
        media: sun6i-csi: Register the media device after creation
        media: sun6i-csi: Pass and store csi device directly in video code
        media: sun6i-csi: Tidy up video code
        media: sun6i-csi: Tidy up v4l2 code
        media: sun6i-csi: Tidy up Kconfig
        media: sun6i-csi: Use runtime pm for clocks and reset
        media: sun6i-csi: Define and use variant to get module clock rate
        media: sun6i-csi: Always set exclusive module clock rate
        media: sun6i-csi: Tidy up platform code
        media: sun6i-csi: Refactor main driver data structures
        media: sun6i-csi: Define and use driver name and (reworked) description
        media: cedrus: Add a Kconfig dependency on RESET_CONTROLLER
        media: sun8i-rotate: Add a Kconfig dependency on RESET_CONTROLLER
        media: sun8i-di: Add a Kconfig dependency on RESET_CONTROLLER
        media: sun4i-csi: Add a Kconfig dependency on RESET_CONTROLLER
        media: sun6i-csi: Add a Kconfig dependency on RESET_CONTROLLER
        ...
      3272eb1a
  4. Oct 22, 2022
    • Pavel Begunkov's avatar
      io_uring/net: fail zc sendmsg when unsupported by socket · cc767e7c
      Pavel Begunkov authored
      
      
      The previous patch fails zerocopy send requests for protocols that don't
      support it, do the same for zerocopy sendmsg.
      
      Signed-off-by: default avatarPavel Begunkov <asml.silence@gmail.com>
      Link: https://lore.kernel.org/r/0854e7bb4c3d810a48ec8b5853e2f61af36a0467.1666346426.git.asml.silence@gmail.com
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      cc767e7c
    • Pavel Begunkov's avatar
      io_uring/net: fail zc send when unsupported by socket · edf81438
      Pavel Begunkov authored
      
      
      If a protocol doesn't support zerocopy it will silently fall back to
      copying. This type of behaviour has always been a source of troubles
      so it's better to fail such requests instead.
      
      Cc: <stable@vger.kernel.org> # 6.0
      Signed-off-by: default avatarPavel Begunkov <asml.silence@gmail.com>
      Link: https://lore.kernel.org/r/2db3c7f16bb6efab4b04569cd16e6242b40c5cb3.1666346426.git.asml.silence@gmail.com
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      edf81438
    • Pavel Begunkov's avatar
      net: flag sockets supporting msghdr originated zerocopy · e993ffe3
      Pavel Begunkov authored
      
      
      We need an efficient way in io_uring to check whether a socket supports
      zerocopy with msghdr provided ubuf_info. Add a new flag into the struct
      socket flags fields.
      
      Cc: <stable@vger.kernel.org> # 6.0
      Signed-off-by: default avatarPavel Begunkov <asml.silence@gmail.com>
      Acked-by: default avatarJakub Kicinski <kuba@kernel.org>
      Link: https://lore.kernel.org/r/3dafafab822b1c66308bb58a0ac738b1e3f53f74.1666346426.git.asml.silence@gmail.com
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      e993ffe3
    • Wilken Gottwalt's avatar
      hwmon: (corsair-psu) Add USB id of the new HX1500i psu · 5619c660
      Wilken Gottwalt authored
      
      
      Also update the documentation accordingly.
      
      Signed-off-by: default avatarWilken Gottwalt <wilken.gottwalt@posteo.net>
      Link: https://lore.kernel.org/r/Y0FghqQCHG/cX5Jz@monster.localdomain
      Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
      5619c660
    • Paolo Bonzini's avatar
      tools: include: sync include/api/linux/kvm.h · 9aec606c
      Paolo Bonzini authored
      Provide a definition of KVM_CAP_DIRTY_LOG_RING_ACQ_REL.
      
      Fixes: 17601bfe
      
       ("KVM: Add KVM_CAP_DIRTY_LOG_RING_ACQ_REL capability and config option")
      Cc: Marc Zyngier <maz@kernel.org>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      9aec606c
    • Alexander Graf's avatar
      KVM: x86: Add compat handler for KVM_X86_SET_MSR_FILTER · 1739c701
      Alexander Graf authored
      
      
      The KVM_X86_SET_MSR_FILTER ioctls contains a pointer in the passed in
      struct which means it has a different struct size depending on whether
      it gets called from 32bit or 64bit code.
      
      This patch introduces compat code that converts from the 32bit struct to
      its 64bit counterpart which then gets used going forward internally.
      With this applied, 32bit QEMU can successfully set MSR bitmaps when
      running on 64bit kernels.
      
      Reported-by: default avatarAndrew Randrianasulu <randrianasulu@gmail.com>
      Fixes: 1a155254
      
       ("KVM: x86: Introduce MSR filtering")
      Signed-off-by: default avatarAlexander Graf <graf@amazon.com>
      Message-Id: <20221017184541.2658-4-graf@amazon.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      1739c701
    • Alexander Graf's avatar
      KVM: x86: Copy filter arg outside kvm_vm_ioctl_set_msr_filter() · 2e3272bc
      Alexander Graf authored
      
      
      In the next patch we want to introduce a second caller to
      set_msr_filter() which constructs its own filter list on the stack.
      Refactor the original function so it takes it as argument instead of
      reading it through copy_from_user().
      
      Signed-off-by: default avatarAlexander Graf <graf@amazon.com>
      Message-Id: <20221017184541.2658-3-graf@amazon.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      2e3272bc
    • Alexander Graf's avatar
      kvm: Add support for arch compat vm ioctls · ed51862f
      Alexander Graf authored
      
      
      We will introduce the first architecture specific compat vm ioctl in the
      next patch. Add all necessary boilerplate to allow architectures to
      override compat vm ioctls when necessary.
      
      Signed-off-by: default avatarAlexander Graf <graf@amazon.com>
      Message-Id: <20221017184541.2658-2-graf@amazon.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      ed51862f
    • Paolo Bonzini's avatar
      Merge tag 'kvm-riscv-fixes-6.1-1' of https://github.com/kvm-riscv/linux into HEAD · 21e60759
      Paolo Bonzini authored
      KVM/riscv fixes for 6.1, take #1
      
      - Fix compilation without RISCV_ISA_ZICBOM
      - Fix kvm_riscv_vcpu_timer_pending() for Sstc
      21e60759
    • Paolo Bonzini's avatar
      Merge tag 'kvmarm-fixes-6.1-2' of... · ebccb53e
      Paolo Bonzini authored
      Merge tag 'kvmarm-fixes-6.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD
      
      KVM/arm64 fixes for 6.1, take #2
      
      - Fix a bug preventing restoring an ITS containing mappings
        for very large and very sparse device topology
      
      - Work around a relocation handling error when compiling
        the nVHE object with profile optimisation
      ebccb53e
    • Paolo Bonzini's avatar
      Merge tag 'kvmarm-fixes-6.1-1' of... · 58348168
      Paolo Bonzini authored
      Merge tag 'kvmarm-fixes-6.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD
      
      KVM/arm64 fixes for 6.1, take #1
      
      - Fix for stage-2 invalidation holding the VM MMU lock
        for too long by limiting the walk to the largest
        block mapping size
      
      - Enable stack protection and branch profiling for VHE
      
      - Two selftest fixes
      58348168
    • Linus Torvalds's avatar
      Merge tag 'thermal-6.1-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 4da34b7d
      Linus Torvalds authored
      Pull thermal control fix from Rafael Wysocki:
       "This fixes the control CPU selection in the intel_powerclamp thermal
        driver"
      
      * tag 'thermal-6.1-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        thermal: intel_powerclamp: Use first online CPU as control_cpu
      4da34b7d
    • Linus Torvalds's avatar
      Merge tag 'pm-6.1-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 20df0961
      Linus Torvalds authored
      Pull power management fixes from Rafael Wysocki:
       "These fix some issues and clean up code in ARM cpufreq drivers.
      
        Specifics:
      
         - Fix module loading in the Tegra124 cpufreq driver (Jon Hunter)
      
         - Fix memory leak and update to read-only region in the qcom cpufreq
           driver (Fabien Parent)
      
         - Miscellaneous minor cleanups to cpufreq drivers (Fabien Parent,
           Yang Yingliang)"
      
      * tag 'pm-6.1-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        cpufreq: sun50i: Switch to use dev_err_probe() helper
        cpufreq: qcom-nvmem: Switch to use dev_err_probe() helper
        cpufreq: imx6q: Switch to use dev_err_probe() helper
        cpufreq: dt: Switch to use dev_err_probe() helper
        cpufreq: qcom: remove unused parameter in function definition
        cpufreq: qcom: fix writes in read-only memory region
        cpufreq: qcom: fix memory leak in error path
        cpufreq: tegra194: Fix module loading
      20df0961
    • Linus Torvalds's avatar
      Merge tag 'acpi-6.1-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 9d6e681d
      Linus Torvalds authored
      Pull ACPI fixes from Rafael Wysocki:
       "These fix issues introduced during this merge window (ACPI/PCI, device
        enumeration and documentation) and some other ones found recently.
      
        Specifics:
      
         - Add missing device reference counting to acpi_get_pci_dev() after
           changing it recently (Rafael Wysocki)
      
         - Fix resource list walk in acpi_dma_get_range() (Robin Murphy)
      
         - Add IRQ override quirk for LENOVO IdeaPad and extend the IRQ
           override warning message (Jiri Slaby)
      
         - Fix integer overflow in ghes_estatus_pool_init() (Ashish Kalra)
      
         - Fix multiple error records handling in one of the ACPI extlog
           driver code paths (Tony Luck)
      
         - Prune DSDT override documentation from index after dropping it
           (Bagas Sanjaya)"
      
      * tag 'acpi-6.1-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI: scan: Fix DMA range assignment
        ACPI: PCI: Fix device reference counting in acpi_get_pci_dev()
        ACPI: resource: note more about IRQ override
        ACPI: resource: do IRQ override on LENOVO IdeaPad
        ACPI: extlog: Handle multiple records
        ACPI: APEI: Fix integer overflow in ghes_estatus_pool_init()
        Documentation: ACPI: Prune DSDT override documentation from index
      9d6e681d
    • Linus Torvalds's avatar
      Merge tag 'efi-fixes-for-v6.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi · ec4cf5db
      Linus Torvalds authored
      Pull EFI fixes from Ard Biesheuvel:
      
       - fixes for the EFI variable store refactor that landed in v6.0
      
       - fixes for issues that were introduced during the merge window
      
       - back out some changes related to EFI zboot signing - we'll add a
         better solution for this during the next cycle
      
      * tag 'efi-fixes-for-v6.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi:
        efi: runtime: Don't assume virtual mappings are missing if VA == PA == 0
        efi: libstub: Fix incorrect payload size in zboot header
        efi: libstub: Give efi_main() asmlinkage qualification
        efi: efivars: Fix variable writes without query_variable_store()
        efi: ssdt: Don't free memory if ACPI table was loaded successfully
        efi: libstub: Remove zboot signing from build options
      ec4cf5db
    • Linus Torvalds's avatar
      Merge tag 'iommu-fixes-v6.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · e97eace6
      Linus Torvalds authored
      Pull iommu fixes from Joerg Roedel:
       "Intel VT-d fixes:
      
         - Fix a lockdep splat issue in intel_iommu_init()
      
         - Allow NVS regions to pass RMRR check
      
         - Domain cleanup in error path"
      
      * tag 'iommu-fixes-v6.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
        iommu/vt-d: Clean up si_domain in the init_dmars() error path
        iommu/vt-d: Allow NVS regions in arch_rmrr_sanity_check()
        iommu/vt-d: Use rcu_lock in get_resv_regions
        iommu: Add gfp parameter to iommu_alloc_resv_region
      e97eace6
    • Linus Torvalds's avatar
      Merge tag 'for-linus-2022102101' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · 334fe5d3
      Linus Torvalds authored
      Pull HID fixes from Benjamin Tissoires:
      
       - a 12 year old bug fix for the Apple Magic Trackpad v1 (José Expósito)
      
       - a fix for a potential crash on removal of the Playstation controllers
         (Roderick Colenbrander)
      
       - a few new device IDs and device-specific quirks, most notably support
         of the new Playstation DualSense Edge controller
      
      * tag 'for-linus-2022102101' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid:
        HID: lenovo: Make array tp10ubkbd_led static const
        HID: saitek: add madcatz variant of MMO7 mouse device ID
        HID: playstation: support updated DualSense rumble mode.
        HID: playstation: add initial DualSense Edge controller support
        HID: playstation: stop DualSense output work on remove.
        HID: magicmouse: Do not set BTN_MOUSE on double report
      334fe5d3
    • Linus Torvalds's avatar
      Merge tag '6.1-rc1-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6 · bd8e9634
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
      
       - memory leak fixes
      
       - fixes for directory leases, including an important one which fixes a
         problem noticed by git functional tests
      
       - fixes relating to missing free_xid calls (helpful for
         tracing/debugging of entry/exit into cifs.ko)
      
       - a multichannel fix
      
       - a small cleanup fix (use of list_move instead of list_del/list_add)
      
      * tag '6.1-rc1-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: update internal module number
        cifs: fix memory leaks in session setup
        cifs: drop the lease for cached directories on rmdir or rename
        smb3: interface count displayed incorrectly
        cifs: Fix memory leak when build ntlmssp negotiate blob failed
        cifs: set rc to -ENOENT if we can not get a dentry for the cached dir
        cifs: use LIST_HEAD() and list_move() to simplify code
        cifs: Fix xid leak in cifs_get_file_info_unix()
        cifs: Fix xid leak in cifs_ses_add_channel()
        cifs: Fix xid leak in cifs_flock()
        cifs: Fix xid leak in cifs_copy_file_range()
        cifs: Fix xid leak in cifs_create()
      bd8e9634
    • Linus Torvalds's avatar
      Merge tag 'nfsd-6.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux · 022c028f
      Linus Torvalds authored
      Pull nfsd fixes from Chuck Lever:
       "Fixes for patches merged in v6.1"
      
      * tag 'nfsd-6.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux:
        nfsd: ensure we always call fh_verify_error tracepoint
        NFSD: unregister shrinker when nfsd_init_net() fails
      022c028f
    • Chang S. Bae's avatar
      x86/fpu: Fix copy_xstate_to_uabi() to copy init states correctly · 471f0aa7
      Chang S. Bae authored
      When an extended state component is not present in fpstate, but in init
      state, the function copies from init_fpstate via copy_feature().
      
      But, dynamic states are not present in init_fpstate because of all-zeros
      init states. Then retrieving them from init_fpstate will explode like this:
      
       BUG: kernel NULL pointer dereference, address: 0000000000000000
       ...
       RIP: 0010:memcpy_erms+0x6/0x10
        ? __copy_xstate_to_uabi_buf+0x381/0x870
        fpu_copy_guest_fpstate_to_uabi+0x28/0x80
        kvm_arch_vcpu_ioctl+0x14c/0x1460 [kvm]
        ? __this_cpu_preempt_check+0x13/0x20
        ? vmx_vcpu_put+0x2e/0x260 [kvm_intel]
        kvm_vcpu_ioctl+0xea/0x6b0 [kvm]
        ? kvm_vcpu_ioctl+0xea/0x6b0 [kvm]
        ? __fget_light+0xd4/0x130
        __x64_sys_ioctl+0xe3/0x910
        ? debug_smp_processor_id+0x17/0x20
        ? fpregs_assert_state_consistent+0x27/0x50
        do_syscall_64+0x3f/0x90
        entry_SYSCALL_64_after_hwframe+0x63/0xcd
      
      Adjust the 'mask' to zero out the userspace buffer for the features that
      are not available both from fpstate and from init_fpstate.
      
      The dynamic features depend on the compacted XSAVE format. Ensure it is
      enabled before reading XCOMP_BV in init_fpstate.
      
      Fixes: 2308ee57
      
       ("x86/fpu/amx: Enable the AMX feature in 64-bit mode")
      Reported-by: default avatarYuan Yao <yuan.yao@intel.com>
      Suggested-by: default avatarDave Hansen <dave.hansen@intel.com>
      Signed-off-by: default avatarChang S. Bae <chang.seok.bae@intel.com>
      Signed-off-by: default avatarDave Hansen <dave.hansen@linux.intel.com>
      Tested-by: default avatarYuan Yao <yuan.yao@intel.com>
      Link: https://lore.kernel.org/lkml/BYAPR11MB3717EDEF2351C958F2C86EED95259@BYAPR11MB3717.namprd11.prod.outlook.com/
      Link: https://lkml.kernel.org/r/20221021185844.13472-1-chang.seok.bae@intel.com
      471f0aa7
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · ed537795
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "Two small changes, one in the lpfc driver and the other in the core.
      
        The core change is an additional footgun guard which prevents users
        from writing the wrong state to sysfs and causing a hang"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: lpfc: Fix memory leak in lpfc_create_port()
        scsi: core: Restrict legal sdev_state transitions via sysfs
      ed537795
    • Linus Torvalds's avatar
      Merge tag 'block-6.1-2022-10-20' of git://git.kernel.dk/linux · d4b7332e
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
      
       - NVMe pull request via Christoph:
            - fix nvme-hwmon for DMA non-cohehrent architectures (Serge Semin)
            - add a nvme-hwmong maintainer (Christoph Hellwig)
            - fix error pointer dereference in error handling (Dan Carpenter)
            - fix invalid memory reference in nvmet_subsys_attr_qid_max_show
              (Daniel Wagner)
            - don't limit the DMA segment size in nvme-apple (Russell King)
            - fix workqueue MEM_RECLAIM flushing dependency (Sagi Grimberg)
            - disable write zeroes on various Kingston SSDs (Xander Li)
      
       - fix a memory leak with block device tracing (Ye)
      
       - flexible-array fix for ublk (Yushan)
      
       - document the ublk recovery feature from this merge window
         (ZiyangZhang)
      
       - remove dead bfq variable in struct (Yuwei)
      
       - error handling rq clearing fix (Yu)
      
       - add an IRQ safety check for the cached bio freeing (Pavel)
      
       - drbd bio cloning fix (Christoph)
      
      * tag 'block-6.1-2022-10-20' of git://git.kernel.dk/linux:
        blktrace: remove unnessary stop block trace in 'blk_trace_shutdown'
        blktrace: fix possible memleak in '__blk_trace_remove'
        blktrace: introduce 'blk_trace_{start,stop}' helper
        bio: safeguard REQ_ALLOC_CACHE bio put
        block, bfq: remove unused variable for bfq_queue
        drbd: only clone bio if we have a backing device
        ublk_drv: use flexible-array member instead of zero-length array
        nvmet: fix invalid memory reference in nvmet_subsys_attr_qid_max_show
        nvmet: fix workqueue MEM_RECLAIM flushing dependency
        nvme-hwmon: kmalloc the NVME SMART log buffer
        nvme-hwmon: consistently ignore errors from nvme_hwmon_init
        nvme: add Guenther as nvme-hwmon maintainer
        nvme-apple: don't limit DMA segement size
        nvme-pci: disable write zeroes on various Kingston SSD
        nvme: fix error pointer dereference in error handling
        Documentation: document ublk user recovery feature
        blk-mq: fix null pointer dereference in blk_mq_clear_rq_mapping()
      d4b7332e
    • Linus Torvalds's avatar
      Merge tag 'io_uring-6.1-2022-10-20' of git://git.kernel.dk/linux · 294e73ff
      Linus Torvalds authored
      Pull io_uring fixes from Jens Axboe:
      
       - Fix a potential memory leak in the error handling path of io-wq setup
         (Rafael)
      
       - Kill an errant debug statement that got added in this release (me)
      
       - Fix an oops with an invalid direct descriptor with IORING_OP_MSG_RING
         (Harshit)
      
       - Remove unneeded FFS_SCM flagging (Pavel)
      
       - Remove polling off the exit path (Pavel)
      
       - Move out direct descriptor debug check to the cleanup path (Pavel)
      
       - Use the proper helper rather than open-coding cached request get
         (Pavel)
      
      * tag 'io_uring-6.1-2022-10-20' of git://git.kernel.dk/linux:
        io-wq: Fix memory leak in worker creation
        io_uring/msg_ring: Fix NULL pointer dereference in io_msg_send_fd()
        io_uring/rw: remove leftover debug statement
        io_uring: don't iopoll from io_ring_ctx_wait_and_kill()
        io_uring: reuse io_alloc_req()
        io_uring: kill hot path fixed file bitmap debug checks
        io_uring: remove FFS_SCM
      294e73ff
    • Linus Torvalds's avatar
      Merge tag 'for-linus-6.1-rc2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · 1d61754c
      Linus Torvalds authored
      Pull xen fixes from Juergen Gross:
       "Just two fixes for the new 'virtio with grants' feature"
      
      * tag 'for-linus-6.1-rc2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen/virtio: Convert PAGE_SIZE/PAGE_SHIFT/PFN_UP to Xen counterparts
        xen/virtio: Handle cases when page offset > PAGE_SIZE properly
      1d61754c
    • Linus Torvalds's avatar
      Merge tag 'selinux-pr-20221020' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux · 0de0b768
      Linus Torvalds authored
      Pull selinux fix from Paul Moore:
       "A small SELinux fix for a GFP_KERNEL allocation while a spinlock is
        held.
      
        The patch, while still fairly small, is a bit larger than one might
        expect from a simple s/GFP_KERNEL/GFP_ATOMIC/ conversion because we
        added support for the function to be called with different gfp flags
        depending on the context, preserving GFP_KERNEL for those cases that
        can safely sleep"
      
      * tag 'selinux-pr-20221020' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux:
        selinux: enable use of both GFP_KERNEL and GFP_ATOMIC in convert_context()
      0de0b768
    • Linus Torvalds's avatar
      Merge tag 'mm-hotfixes-stable-2022-10-20' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm · 440b7895
      Linus Torvalds authored
      Pull misc fixes from Andrew Morron:
       "Seventeen hotfixes, mainly for MM.
      
        Five are cc:stable and the remainder address post-6.0 issues"
      
      * tag 'mm-hotfixes-stable-2022-10-20' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm:
        nouveau: fix migrate_to_ram() for faulting page
        mm/huge_memory: do not clobber swp_entry_t during THP split
        hugetlb: fix memory leak associated with vma_lock structure
        mm/page_alloc: reduce potential fragmentation in make_alloc_exact()
        mm: /proc/pid/smaps_rollup: fix maple tree search
        mm,hugetlb: take hugetlb_lock before decrementing h->resv_huge_pages
        mm/mmap: fix MAP_FIXED address return on VMA merge
        mm/mmap.c: __vma_adjust(): suppress uninitialized var warning
        mm/mmap: undo ->mmap() when mas_preallocate() fails
        init: Kconfig: fix spelling mistake "satify" -> "satisfy"
        ocfs2: clear dinode links count in case of error
        ocfs2: fix BUG when iput after ocfs2_mknod fails
        gcov: support GCC 12.1 and newer compilers
        zsmalloc: zs_destroy_pool: add size_class NULL check
        mm/mempolicy: fix mbind_range() arguments to vma_merge()
        mailmap: update email for Qais Yousef
        mailmap: update Dan Carpenter's email address
      440b7895