1. 13 Nov, 2021 7 commits
    • Linus Torvalds's avatar
      Merge tag 'selinux-pr-20211112' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux · 0a907292
      Linus Torvalds authored
      Pull selinux fixes from Paul Moore:
       "Unfortunately I need to request a revert for two LSM/SELinux patches
        that came in via the network tree. The two patches in question add a
        new SCTP/LSM hook as well as an SELinux implementation of that LSM
        hook. The short version of "why?" is in the commit description of the
        revert patch, but I'll copy-n-paste the important bits below to save
        some time for the curious:
      
            ... Unfortunately these two patches were merged without proper
            review (the Reviewed-by and Tested-by tags from Richard Haines
            were for previous revisions of these patches that were
            significantly different) and there are outstanding objections from
            the SELinux maintainers regarding these patches.
      
            Work is currently ongoing to correct the problems identified in
            the reverted patches, as well as others that have come up during
            review, but it is unclear at this point in time when that work
            will be ready for inclusion in the mainline kernel. In the
            interest of not keeping objectionable code in the kernel for
            multiple weeks, and potentially a kernel release, we are reverting
            the two problematic patches.
      
        As usual with these things there is plenty of context to go with this
        and I'll try to do my best to provide that now. This effort started
        with a report of SCTP client side peel-offs not working correctly with
        SELinux, Ondrej Mosnacek put forth a patch which he believed properly
        addressed the problem but upon review by the netdev folks Xin Long
        described some additional issues and submitted an improved patchset
        for review. The SELinux folks reviewed Xin Long's initial patchset and
        suggested some changes which resulted in a second patchset (v2) from
        Xin Long; this is the patchset that is currently in your tree.
        Unfortunately this v2 patchset from Xin Long was merged before it had
        spent even just 24 hours on the mailing lists during the early days of
        the merge window, a time when many of us were busy doing verification
        of the newly released v5.15 kernel as well final review and testing of
        our v5.16 pull requests. Making matters worse, upon reviewing the v2
        patchset there were both changes which were found objectionable by
        SELinux standards as well as additional outstanding SCTP/SELinux
        interaction problems. At this point we did two things: resumed working
        on a better fix for the SCTP/SELinux issue(s) - thank you Ondrej - and
        we asked the networking folks to revert the v2 patchset.
      
        The revert request was obviously rejected, but at the time I believed
        it was just going to be an issue for linux-next; I wasn't expecting
        something this significant that was merged into the networking tree
        during the merge window to make it into your tree in the same window,
        yet as of last night that is exactly what happened. While we continue
        to try and resolve the SCTP/SELinux problem I am asking once again to
        revert the v2 patches and not ship the current
        security_sctp_assoc_established() hook in a v5.16-rcX kernel. If I was
        confident that we could solve these issues in a week, maybe two, I
        would refrain from asking for the revert but our current estimate is
        for a minimum of two weeks for the next patch revision. With the
        likelihood of additional delays due to normal patch review follow-up
        and/or holidays it seems to me that the safest course of action is to
        revert the patch both to try and keep some objectionable code out of a
        release kernel and limit the chances of any new breakages from such a
        change. While the SCTP/SELinux code in v5.15 and earlier has problems,
        they are known problems, and I'd like to try and avoid creating new
        and different problems while we work to fix things properly.
      
        One final thing to mention: Xin Long's v2 patchset consisted of four
        patches, yet this revert is for only the last two. We see the first
        two patches as good, reasonable, and not likely to cause an issue. In
        an attempt to create a cleaner revert patch we suggest leaving the
        first two patches in the tree as they are currently"
      
      * tag 'selinux-pr-20211112' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux:
        net,lsm,selinux: revert the security_sctp_assoc_established() hook
      0a907292
    • Linus Torvalds's avatar
      Merge tag 'trace-v5.16-4' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 7c3737c7
      Linus Torvalds authored
      Pull tracing fixes from Steven Rostedt:
       "Three tracing fixes:
      
         - Make local osnoise_instances static
      
         - Copy just actual size of histogram strings
      
         - Properly check missing operands in histogram expressions"
      
      * tag 'trace-v5.16-4' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        tracing/histogram: Fix check for missing operands in an expression
        tracing/histogram: Do not copy the fixed-size char array field over the field size
        tracing/osnoise: Make osnoise_instances static
      7c3737c7
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 4d6fe79f
      Linus Torvalds authored
      Pull more kvm updates from Paolo Bonzini:
       "New x86 features:
      
         - Guest API and guest kernel support for SEV live migration
      
         - SEV and SEV-ES intra-host migration
      
        Bugfixes and cleanups for x86:
      
         - Fix misuse of gfn-to-pfn cache when recording guest steal time /
           preempted status
      
         - Fix selftests on APICv machines
      
         - Fix sparse warnings
      
         - Fix detection of KVM features in CPUID
      
         - Cleanups for bogus writes to MSR_KVM_PV_EOI_EN
      
         - Fixes and cleanups for MSR bitmap handling
      
         - Cleanups for INVPCID
      
         - Make x86 KVM_SOFT_MAX_VCPUS consistent with other architectures
      
        Bugfixes for ARM:
      
         - Fix finalization of host stage2 mappings
      
         - Tighten the return value of kvm_vcpu_preferred_target()
      
         - Make sure the extraction of ESR_ELx.EC is limited to architected
           bits"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (34 commits)
        KVM: SEV: unify cgroup cleanup code for svm_vm_migrate_from
        KVM: x86: move guest_pv_has out of user_access section
        KVM: x86: Drop arbitrary KVM_SOFT_MAX_VCPUS
        KVM: Move INVPCID type check from vmx and svm to the common kvm_handle_invpcid()
        KVM: VMX: Add a helper function to retrieve the GPR index for INVPCID, INVVPID, and INVEPT
        KVM: nVMX: Clean up x2APIC MSR handling for L2
        KVM: VMX: Macrofy the MSR bitmap getters and setters
        KVM: nVMX: Handle dynamic MSR intercept toggling
        KVM: nVMX: Query current VMCS when determining if MSR bitmaps are in use
        KVM: x86: Don't update vcpu->arch.pv_eoi.msr_val when a bogus value was written to MSR_KVM_PV_EOI_EN
        KVM: x86: Rename kvm_lapic_enable_pv_eoi()
        KVM: x86: Make sure KVM_CPUID_FEATURES really are KVM_CPUID_FEATURES
        KVM: x86: Add helper to consolidate core logic of SET_CPUID{2} flows
        kvm: mmu: Use fast PF path for access tracking of huge pages when possible
        KVM: x86/mmu: Properly dereference rcu-protected TDP MMU sptep iterator
        KVM: x86: inhibit APICv when KVM_GUESTDBG_BLOCKIRQ active
        kvm: x86: Convert return type of *is_valid_rdpmc_ecx() to bool
        KVM: x86: Fix recording of guest steal time / preempted status
        selftest: KVM: Add intra host migration tests
        selftest: KVM: Add open sev dev helper
        ...
      4d6fe79f
    • Linus Torvalds's avatar
      Merge branch 'exit-cleanups-for-v5.16' of... · d4fa09e5
      Linus Torvalds authored
      Merge branch 'exit-cleanups-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace
      
      Pull vm86 fix from Eric Biederman:
       "Just the removal of an unnecessary (and incorrect) test from a BUG_ON"
      
      * 'exit-cleanups-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
        signal/vm86_32: Remove pointless test in BUG_ON
      d4fa09e5
    • Linus Torvalds's avatar
      Merge tag 's390-5.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · be427a88
      Linus Torvalds authored
      Pull more s390 updates from Vasily Gorbik:
      
       - Add PCI automatic error recovery.
      
       - Fix tape driver timer initialization broken during timers api
         cleanup.
      
       - Fix bogus CPU measurement counters values on CPUs offlining.
      
       - Check the validity of subchanel before reading other fields in the
         schib in cio code.
      
      * tag 's390-5.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/cio: check the subchannel validity for dev_busid
        s390/cpumf: cpum_cf PMU displays invalid value after hotplug remove
        s390/tape: fix timer initialization in tape_std_assign()
        s390/pci: implement minimal PCI error recovery
        PCI: Export pci_dev_lock()
        s390/pci: implement reset_slot for hotplug slot
        s390/pci: refresh function handle in iomap
      be427a88
    • Linus Torvalds's avatar
      Merge tag 'riscv-for-linus-5.16-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux · b89f311d
      Linus Torvalds authored
      Pull RISC-V updates from Palmer Dabbelt:
      
       - Support for time namespaces in the VDSO, along with some associated
         cleanups.
      
       - Support for building rv32 randconfigs.
      
       - Improvements to the XIP port that allow larger kernels to function
      
       - Various device tree cleanups for both the SiFive and Microchip boards
      
       - A handful of defconfig updates, including enabling Nouveau.
      
      There are also various small cleanups.
      
      * tag 'riscv-for-linus-5.16-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux:
        riscv: defconfig: enable DRM_NOUVEAU
        riscv/vdso: Drop unneeded part due to merge issue
        riscv: remove .text section size limitation for XIP
        riscv: dts: sifive: add missing compatible for plic
        riscv: dts: microchip: add missing compatibles for clint and plic
        riscv: dts: sifive: drop duplicated nodes and properties in sifive
        riscv: dts: sifive: fix Unleashed board compatible
        riscv: dts: sifive: use only generic JEDEC SPI NOR flash compatible
        riscv: dts: microchip: use vendor compatible for Cadence SD4HC
        riscv: dts: microchip: drop unused pinctrl-names
        riscv: dts: microchip: drop duplicated MMC/SDHC node
        riscv: dts: microchip: fix board compatible
        riscv: dts: microchip: drop duplicated nodes
        dt-bindings: mmc: cdns: document Microchip MPFS MMC/SDHCI controller
        riscv: add rv32 and rv64 randconfig build targets
        riscv: mm: don't advertise 1 num_asid for 0 asid bits
        riscv: set default pm_power_off to NULL
        riscv/vdso: Add support for time namespaces
      b89f311d
    • Linus Torvalds's avatar
      Merge tag 'mips_5.16_1' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux · 4218a96f
      Linus Torvalds authored
      Pull more MIPS updates from Thomas Bogendoerfer:
      
       - Config updates for BMIPS platform
      
       - Build fixes
      
       - Makefile cleanups
      
      * tag 'mips_5.16_1' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux:
        mips: decompressor: do not copy source files while building
        MIPS: boot/compressed/: add __bswapdi2() to target for ZSTD decompression
        MIPS: fix duplicated slashes for Platform file path
        MIPS: fix *-pkg builds for loongson2ef platform
        PCI: brcmstb: Allow building for BMIPS_GENERIC
        MIPS: BMIPS: Enable PCI Kconfig
        MIPS: VDSO: remove -nostdlib compiler flag
        mips: BCM63XX: ensure that CPU_SUPPORTS_32BIT_KERNEL is set
        MIPS: Update bmips_stb_defconfig
        MIPS: Allow modules to set board_be_handler
      4218a96f
  2. 12 Nov, 2021 20 commits
    • Eric W. Biederman's avatar
      signal/vm86_32: Remove pointless test in BUG_ON · c7a9b647
      Eric W. Biederman authored
      kernel test robot <oliver.sang@intel.com> writes[1]:
      >
      > Greeting,
      >
      > FYI, we noticed the following commit (built with gcc-9):
      >
      > commit: 1a4d21a2 ("signal/vm86_32: Replace open coded BUG_ON with an actual BUG_ON")
      > https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git master
      >
      > in testcase: trinity
      > version: trinity-static-i386-x86_64-1c734c75-1_2020-01-06
      > with following parameters:
      >
      >
      > [ 70.645554][ T3747] kernel BUG at arch/x86/kernel/vm86_32.c:109!
      > [ 70.646185][ T3747] invalid opcode: 0000 [#1] SMP
      > [ 70.646682][ T3747] CPU: 0 PID: 3747 Comm: trinity-c6 Not tainted 5.15.0-rc1-00009-g1a4d21a2 #1
      > [ 70.647598][ T3747] EIP: save_v86_state (arch/x86/kernel/vm86_32.c:109 (discriminator 3))
      > [ 70.648113][ T3747] Code: 89 c3 64 8b 35 60 b8 25 c2 83 ec 08 89 55 f0 8b 96 10 19 00 00 89 55 ec e8 c6 2d 0c 00 fb 8b 55 ec 85 d2 74 05 83 3a 00 75 02 <0f> 0b 8b 86 10 19 00 00 8b 4b 38 8b 78 48 31 cf 89 f8 8b 7a 4c 81
      > [ 70.650136][ T3747] EAX: 00000001 EBX: f5f49fac ECX: 0000000b EDX: f610b600
      > [ 70.650852][ T3747] ESI: f5f79cc0 EDI: f5f79cc0 EBP: f5f49f04 ESP: f5f49ef0
      > [ 70.651593][ T3747] DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 EFLAGS: 00010246
      > [ 70.652413][ T3747] CR0: 80050033 CR2: 00004000 CR3: 35fc7000 CR4: 000406d0
      > [ 70.653169][ T3747] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000
      > [ 70.653897][ T3747] DR6: fffe0ff0 DR7: 00000400
      > [ 70.654382][ T3747] Call Trace:
      > [ 70.654719][ T3747] arch_do_signal_or_restart (arch/x86/kernel/signal.c:792 arch/x86/kernel/signal.c:867)
      > [ 70.655288][ T3747] exit_to_user_mode_prepare (kernel/entry/common.c:174 kernel/entry/common.c:209)
      > [ 70.655854][ T3747] irqentry_exit_to_user_mode (kernel/entry/common.c:126 kernel/entry/common.c:317)
      > [ 70.656450][ T3747] irqentry_exit (kernel/entry/common.c:406)
      > [ 70.656897][ T3747] exc_page_fault (arch/x86/mm/fault.c:1535)
      > [ 70.657369][ T3747] ? sysvec_kvm_asyncpf_interrupt (arch/x86/mm/fault.c:1488)
      > [ 70.657989][ T3747] handle_exception (arch/x86/entry/entry_32.S:1085)
      
      vm86_32.c:109 is: "BUG_ON(!vm86 || !vm86->user_vm86)"
      
      When trying to understand the failure Brian Gerst pointed out[2] that
      the code does not need protection against vm86->user_vm86 being NULL.
      The copy_from_user code will already handles that case if the address
      is going to fault.
      
      Looking futher I realized that if we care about not allowing struct
      vm86plus_struct at address 0 it should be do_sys_vm86 (the system
      call) that does the filtering.  Not way down deep when the emulation
      has completed in save_v86_state.
      
      So let's just remove the silly case of attempting to filter a
      userspace address with a BUG_ON.  Existing userspace can't break and
      it won't make the kernel any more attackable as the userspace access
      helpers will handle it, if it isn't a good userspace pointer.
      
      I have run the reproducer the fuzzer gave me before I made this change
      and it reproduced, and after I made this change and I have not seen
      the reported failure.  So it does looks like this fixes the reported
      issue.
      
      [1] https://lkml.kernel.org/r/20211112074030.GB19820@xsang-OptiPlex-9020
      [2] https://lkml.kernel.org/r/CAMzpN2jkK5sAv-Kg_kVnCEyVySiqeTdUORcC=AdG1gV6r8nUew@mail.gmail.comSuggested-by: default avatarBrian Gerst <brgerst@gmail.com>
      Reported-by: default avatarkernel test robot <oliver.sang@intel.com>
      Tested-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
      c7a9b647
    • Paolo Bonzini's avatar
      Merge tag 'kvmarm-fixes-5.16-1' of... · 84886c26
      Paolo Bonzini authored
      Merge tag 'kvmarm-fixes-5.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into kvm-master
      
      KVM/arm64 fixes for 5.16, take #1
      
      - Fix the host S2 finalization by solely iterating over the memblocks
        instead of the whole IPA space
      
      - Tighten the return value of kvm_vcpu_preferred_target() now that
        32bit support is long gone
      
      - Make sure the extraction of ESR_ELx.EC is limited to the architected
        bits
      
      - Comment fixups
      84886c26
    • Kalesh Singh's avatar
      tracing/histogram: Fix check for missing operands in an expression · 1cab6bce
      Kalesh Singh authored
      If a binary operation is detected while parsing an expression string,
      the operand strings are deduced by splitting the experssion string at
      the position of the detected binary operator. Both operand strings are
      sub-strings (can be empty string) of the expression string but will
      never be NULL.
      
      Currently a NULL check is used for missing operands, fix this by
      checking for empty strings instead.
      
      Link: https://lkml.kernel.org/r/20211112191324.1302505-1-kaleshsingh@google.comSigned-off-by: default avatarKalesh Singh <kaleshsingh@google.com>
      Fixes: 9710b2f3 ("tracing: Fix operator precedence for hist triggers expression")
      Reported-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      1cab6bce
    • Masami Hiramatsu's avatar
      tracing/histogram: Do not copy the fixed-size char array field over the field size · 63f84ae6
      Masami Hiramatsu authored
      Do not copy the fixed-size char array field of the events over
      the field size. The histogram treats char array as a string and
      there are 2 types of char array in the event, fixed-size and
      dynamic string. The dynamic string (__data_loc) field must be
      null terminated, but the fixed-size char array field may not
      be null terminated (not a string, but just a data).
      In that case, histogram can copy the data after the field.
      This uses the original field size for fixed-size char array
      field to restrict the histogram not to access over the original
      field size.
      
      Link: https://lkml.kernel.org/r/163673292822.195747.3696966210526410250.stgit@devnote2
      
      Fixes: 02205a67 (tracing: Add support for 'field variables')
      Signed-off-by: default avatarMasami Hiramatsu <mhiramat@kernel.org>
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      63f84ae6
    • Linus Torvalds's avatar
      Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 66f4beaa
      Linus Torvalds authored
      Pull crypto fix from Herbert Xu:
       "This fixes a boot crash regression"
      
      * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
        crypto: api - Fix boot-up crash when crypto manager is disabled
      66f4beaa
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 6cbcc7ab
      Linus Torvalds authored
      Pull more SCSI updates from James Bottomley:
       "This series is all the stragglers that didn't quite make the first
        merge window pull. It's mostly minor updates and bug fixes of merge
        window code but it also has two driver updates: ufs and qla2xxx"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (46 commits)
        scsi: scsi_debug: Don't call kcalloc() if size arg is zero
        scsi: core: Remove command size deduction from scsi_setup_scsi_cmnd()
        scsi: scsi_ioctl: Validate command size
        scsi: ufs: ufshpb: Properly handle max-single-cmd
        scsi: core: Avoid leaving shost->last_reset with stale value if EH does not run
        scsi: bsg: Fix errno when scsi_bsg_register_queue() fails
        scsi: sr: Remove duplicate assignment
        scsi: ufs: ufs-exynos: Introduce ExynosAuto v9 virtual host
        scsi: ufs: ufs-exynos: Multi-host configuration for ExynosAuto v9
        scsi: ufs: ufs-exynos: Support ExynosAuto v9 UFS
        scsi: ufs: ufs-exynos: Add pre/post_hce_enable drv callbacks
        scsi: ufs: ufs-exynos: Factor out priv data init
        scsi: ufs: ufs-exynos: Add EXYNOS_UFS_OPT_SKIP_CONFIG_PHY_ATTR option
        scsi: ufs: ufs-exynos: Support custom version of ufs_hba_variant_ops
        scsi: ufs: ufs-exynos: Add setup_clocks callback
        scsi: ufs: ufs-exynos: Add refclkout_stop control
        scsi: ufs: ufs-exynos: Simplify drv_data retrieval
        scsi: ufs: ufs-exynos: Change pclk available max value
        scsi: ufs: Add quirk to enable host controller without PH configuration
        scsi: ufs: Add quirk to handle broken UIC command
        ...
      6cbcc7ab
    • Linus Torvalds's avatar
      Merge tag 'pwm/for-5.16-rc1' of... · 030c28a0
      Linus Torvalds authored
      Merge tag 'pwm/for-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm
      
      Pull pwm updates from Thierry Reding:
       "This set is mostly small fixes and cleanups, so more of a janitorial
        update for this cycle"
      
      * tag 'pwm/for-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm:
        pwm: vt8500: Rename pwm_busy_wait() to make it obviously driver-specific
        dt-bindings: pwm: tpu: Add R-Car M3-W+ device tree bindings
        dt-bindings: pwm: tpu: Add R-Car V3U device tree bindings
        pwm: pwm-samsung: Trigger manual update when disabling PWM
        pwm: visconti: Simplify using devm_pwmchip_add()
        pwm: samsung: Describe driver in Kconfig
        pwm: Make it explicit that pwm_apply_state() might sleep
        pwm: Add might_sleep() annotations for !CONFIG_PWM API functions
        pwm: atmel: Drop unused header
      030c28a0
    • Linus Torvalds's avatar
      Merge tag 'sound-fix-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 0d5d7463
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "A collection of fixes for 5.16-rc1, notably for a few regressions that
        were found in 5.15 and pre-rc1:
      
         - revert of the unification of SG-buffer helper functions on x86 and
           the relevant fix
      
         - regression fixes for mmap after the recent code refactoring
      
         - two NULL dereference fixes in HD-audio controller driver
      
         - UAF fixes in ALSA timer core
      
         - a few usual HD-audio and FireWire quirks"
      
      * tag 'sound-fix-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: fireworks: add support for Loud Onyx 1200f quirk
        ALSA: hda: fix general protection fault in azx_runtime_idle
        ALSA: hda: Free card instance properly at probe errors
        ALSA: hda/realtek: Add quirk for HP EliteBook 840 G7 mute LED
        ALSA: memalloc: Remove a stale comment
        ALSA: synth: missing check for possible NULL after the call to kstrdup
        ALSA: memalloc: Use proper SG helpers for noncontig allocations
        ALSA: pci: rme: Fix unaligned buffer addresses
        ALSA: firewire-motu: add support for MOTU Track 16
        ALSA: PCM: Fix NULL dereference at mmap checks
        ALSA: hda/realtek: Add quirk for ASUS UX550VE
        ALSA: timer: Unconditionally unlink slave instances, too
        ALSA: memalloc: Catch call with NULL snd_dma_buffer pointer
        Revert "ALSA: memalloc: Convert x86 SG-buffer handling with non-contiguous type"
        ALSA: hda/realtek: Add a quirk for Acer Spin SP513-54N
        ALSA: firewire-motu: add support for MOTU Traveler mk3
        ALSA: hda/realtek: Headset fixup for Clevo NH77HJQ
        ALSA: timer: Fix use-after-free problem
      0d5d7463
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2021-11-12' of git://anongit.freedesktop.org/drm/drm · 304ac803
      Linus Torvalds authored
      Pull more drm updates from Dave Airlie:
       "I missed a drm-misc-next pull for the main pull last week. It wasn't
        that major and isn't the bulk of this at all. This has a bunch of
        fixes all over, a lot for amdgpu and i915.
      
        bridge:
         - HPD improvments for lt9611uxc
         - eDP aux-bus support for ps8640
         - LVDS data-mapping selection support
      
        ttm:
         - remove huge page functionality (needs reworking)
         - fix a race condition during BO eviction
      
        panels:
         - add some new panels
      
        fbdev:
         - fix double-free
         - remove unused scrolling acceleration
         - CONFIG_FB dep improvements
      
        locking:
         - improve contended locking logging
         - naming collision fix
      
        dma-buf:
         - add dma_resv_for_each_fence iterator
         - fix fence refcounting bug
         - name locking fixesA
      
        prime:
         - fix object references during mmap
      
        nouveau:
         - various code style changes
         - refcount fix
         - device removal fixes
         - protect client list with a mutex
         - fix CE0 address calculation
      
        i915:
         - DP rates related fixes
         - Revert disabling dual eDP that was causing state readout problems
         - put the cdclk vtables in const data
         - Fix DVO port type for older platforms
         - Fix blankscreen by turning DP++ TMDS output buffers on encoder->shutdown
         - CCS FBs related fixes
         - Fix recursive lock in GuC submission
         - Revert guc_id from i915_request tracepoint
         - Build fix around dmabuf
      
        amdgpu:
         - GPU reset fix
         - Aldebaran fix
         - Yellow Carp fixes
         - DCN2.1 DMCUB fix
         - IOMMU regression fix for Picasso
         - DSC display fixes
         - BPC display calculation fixes
         - Other misc display fixes
         - Don't allow partial copy from user for DC debugfs
         - SRIOV fixes
         - GFX9 CSB pin count fix
         - Various IP version check fixes
         - DP 2.0 fixes
         - Limit DCN1 MPO fix to DCN1
      
        amdkfd:
         - SVM fixes
         - Fix gfx version for renoir
         - Reset fixes
      
        udl:
         - timeout fix
      
        imx:
         - circular locking fix
      
        virtio:
         - NULL ptr deref fix"
      
      * tag 'drm-next-2021-11-12' of git://anongit.freedesktop.org/drm/drm: (126 commits)
        drm/ttm: Double check mem_type of BO while eviction
        drm/amdgpu: add missed support for UVD IP_VERSION(3, 0, 64)
        drm/amdgpu: drop jpeg IP initialization in SRIOV case
        drm/amd/display: reject both non-zero src_x and src_y only for DCN1x
        drm/amd/display: Add callbacks for DMUB HPD IRQ notifications
        drm/amd/display: Don't lock connection_mutex for DMUB HPD
        drm/amd/display: Add comment where CONFIG_DRM_AMD_DC_DCN macro ends
        drm/amdkfd: Fix retry fault drain race conditions
        drm/amdkfd: lower the VAs base offset to 8KB
        drm/amd/display: fix exit from amdgpu_dm_atomic_check() abruptly
        drm/amd/amdgpu: fix the kfd pre_reset sequence in sriov
        drm/amdgpu: fix uvd crash on Polaris12 during driver unloading
        drm/i915/adlp/fb: Prevent the mapping of redundant trailing padding NULL pages
        drm/i915/fb: Fix rounding error in subsampled plane size calculation
        drm/i915/hdmi: Turn DP++ TMDS output buffers back on in encoder->shutdown()
        drm/locking: fix __stack_depot_* name conflict
        drm/virtio: Fix NULL dereference error in virtio_gpu_poll
        drm/amdgpu: fix SI handling in amdgpu_device_asic_has_dc_support()
        drm/amdgpu: Fix dangling kfd_bo pointer for shared BOs
        drm/amd/amdkfd: Don't sent command to HWS on kfd reset
        ...
      304ac803
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · f78e9de8
      Linus Torvalds authored
      Pull input updates from Dmitry Torokhov:
       "Just one new driver (Cypress StreetFighter touchkey), and no input
        core changes this time.
      
        Plus various fixes and enhancements to existing drivers"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (54 commits)
        Input: iforce - fix control-message timeout
        Input: wacom_i2c - use macros for the bit masks
        Input: ili210x - reduce sample period to 15ms
        Input: ili210x - improve polled sample spacing
        Input: ili210x - special case ili251x sample read out
        Input: elantench - fix misreporting trackpoint coordinates
        Input: synaptics-rmi4 - Fix device hierarchy
        Input: i8042 - Add quirk for Fujitsu Lifebook T725
        Input: cap11xx - add support for cap1206
        Input: remove unused header <linux/input/cy8ctmg110_pdata.h>
        Input: ili210x - add ili251x firmware update support
        Input: ili210x - export ili251x version details via sysfs
        Input: ili210x - use resolution from ili251x firmware
        Input: pm8941-pwrkey - respect reboot_mode for warm reset
        reboot: export symbol 'reboot_mode'
        Input: max77693-haptic - drop unneeded MODULE_ALIAS
        Input: cpcap-pwrbutton - do not set input parent explicitly
        Input: max8925_onkey - don't mark comment as kernel-doc
        Input: ads7846 - do not attempt IRQ workaround when deferring probe
        Input: ads7846 - use input_set_capability()
        ...
      f78e9de8
    • Linus Torvalds's avatar
      Merge tag 'rtc-5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux · 3b81bf78
      Linus Torvalds authored
      Pull RTC updates from Alexandre Belloni:
       "This includes new ioctls to get and set parameters and in particular
        the backup switch mode that is needed for some RTCs to actually enable
        the backup voltage (and have a useful RTC).
      
        The same interface can also be used to get the actual features
        supported by the RTC so userspace has a better way than trying and
        failing.
      
        Summary:
      
        Subsystem:
         - Add new ioctl to get and set extra RTC parameters, this includes
           backup switch mode
         - Expose available features to userspace, in particular, when alarmas
           have a resolution of one minute instead of a second.
         - Let the core handle those alarms with a minute resolution
      
        New driver:
         - MSTAR MSC313 RTC
      
        Drivers:
         - Add SPI ID table where necessary
         - Add BSM support for rv3028, rv3032 and pcf8523
         - s3c: set RTC range
         - rx8025: set range, implement .set_offset and .read_offset"
      
      * tag 'rtc-5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (50 commits)
        rtc: rx8025: use .set_offset/.read_offset
        rtc: rx8025: use rtc_add_group
        rtc: rx8025: clear RTC_FEATURE_ALARM when alarm are not supported
        rtc: rx8025: set range
        rtc: rx8025: let the core handle the alarm resolution
        rtc: rx8025: switch to devm_rtc_allocate_device
        rtc: ab8500: let the core handle the alarm resolution
        rtc: ab-eoz9: support UIE when available
        rtc: ab-eoz9: use RTC_FEATURE_UPDATE_INTERRUPT
        rtc: rv3032: let the core handle the alarm resolution
        rtc: s35390a: let the core handle the alarm resolution
        rtc: handle alarms with a minute resolution
        rtc: pcf85063: silence cppcheck warning
        rtc: rv8803: fix writing back ctrl in flag register
        rtc: s3c: Add time range
        rtc: s3c: Extract read/write IO into separate functions
        rtc: s3c: Remove usage of devm_rtc_device_register()
        rtc: tps80031: Remove driver
        rtc: sun6i: Allow probing without an early clock provider
        rtc: pcf8523: add BSM support
        ...
      3b81bf78
    • Linus Torvalds's avatar
      Merge tag 'libata-5.16-rc1-p2' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata · 204d32ef
      Linus Torvalds authored
      Pull more libata updates from Damien Le Moal:
       "Second round of updates for libata for 5.16:
      
         - Fix READ LOG EXT and READ LOG DMA EXT command timeouts during disk
           revalidation after a resume or a modprobe of the LLDD (me)
      
         - Remove unnecessary error message in sata_highbank driver (Xu)
      
         - Better handling of accesses to the IDENTIFY DEVICE data log for
           drives that do not support this log page (me)
      
         - Fix ahci_shost_attr_group declaration in ahci driver (me)"
      
      * tag 'libata-5.16-rc1-p2' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata:
        libata: libahci: declare ahci_shost_attr_group as static
        libata: add horkage for missing Identify Device log
        ata: sata_highbank: Remove unnecessary print function dev_err()
        libata: fix read log timeout value
      204d32ef
    • Sasha Levin's avatar
      tools/lib/lockdep: drop liblockdep · 7246f4dc
      Sasha Levin authored
      TL;DR: While a tool like liblockdep is useful, it probably doesn't
      belong within the kernel tree.
      
      liblockdep attempts to reuse kernel code both directly (by directly
      building the kernel's lockdep code) as well as indirectly (by using
      sanitized headers). This makes liblockdep an integral part of the
      kernel.
      
      It also makes liblockdep quite unique: while other userspace code might
      use sanitized headers, it generally doesn't attempt to use kernel code
      directly which means that changes on the kernel side of things don't
      affect (and break) it directly.
      
      All our workflows and tooling around liblockdep don't support this
      uniqueness. Changes that go into the kernel code aren't validated to not
      break in-tree userspace code.
      
      liblockdep ended up being very fragile, breaking over and over, to the
      point that living in the same tree as the lockdep code lost most of it's
      value.
      
      liblockdep should continue living in an external tree, syncing with
      the kernel often, in a controllable way.
      Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      7246f4dc
    • Linus Torvalds's avatar
      thermal: int340x: fix build on 32-bit targets · d9c8e52f
      Linus Torvalds authored
      Commit aeb58c86 ("thermal/drivers/int340x: processor_thermal: Suppot
      64 bit RFIM responses") started using 'readq()' to read 64-bit status
      responses from the int340x hardware.
      
      That's all fine and good, but on 32-bit targets a 64-bit 'readq()' is
      ambiguous, since it's no longer an atomic access.  Some hardware might
      require 64-bit accesses, and other hardware might want low word first or
      high word first.
      
      It's quite likely that the driver isn't relevant in a 32-bit environment
      any more, and there's a patch floating around to just make it depend on
      X86_64, but let's make it buildable on x86-32 anyway.
      
      The driver previously just read the low 32 bits, so the hardware
      certainly is ok with 32-bit reads, and in a little-endian environment
      the low word first model is the natural one.
      
      So just add the include for the 'io-64-nonatomic-lo-hi.h' version.
      
      Fixes: aeb58c86 ("thermal/drivers/int340x: processor_thermal: Suppot 64 bit RFIM responses")
      Reported-by: default avatarJakub Kicinski <kuba@kernel.org>
      Cc: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
      Cc: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d9c8e52f
    • Paul Moore's avatar
      net,lsm,selinux: revert the security_sctp_assoc_established() hook · 32a370ab
      Paul Moore authored
      This patch reverts two prior patches, e7310c94
      ("security: implement sctp_assoc_established hook in selinux") and
      7c2ef024 ("security: add sctp_assoc_established hook"), which
      create the security_sctp_assoc_established() LSM hook and provide a
      SELinux implementation.  Unfortunately these two patches were merged
      without proper review (the Reviewed-by and Tested-by tags from
      Richard Haines were for previous revisions of these patches that
      were significantly different) and there are outstanding objections
      from the SELinux maintainers regarding these patches.
      
      Work is currently ongoing to correct the problems identified in the
      reverted patches, as well as others that have come up during review,
      but it is unclear at this point in time when that work will be ready
      for inclusion in the mainline kernel.  In the interest of not keeping
      objectionable code in the kernel for multiple weeks, and potentially
      a kernel release, we are reverting the two problematic patches.
      Signed-off-by: default avatarPaul Moore <paul@paul-moore.com>
      32a370ab
    • Daniel Bristot de Oliveira's avatar
      tracing/osnoise: Make osnoise_instances static · d7458bc0
      Daniel Bristot de Oliveira authored
      Make the struct list_head osnoise_instances definition static.
      
      Link: https://lore.kernel.org/all/202111120052.ZuikQSJi-lkp@intel.com/
      Link: https://lkml.kernel.org/r/d001f0eeac66e2b2eeec7d2a15e9e7abede0453a.1636667971.git.bristot@kernel.org
      
      Cc: Ingo Molnar <mingo@redhat.com>
      Fixes: dae18134 ("tracing/osnoise: Support a list of trace_array *tr")
      Reported-by: default avatarkernel test robot <lkp@intel.com>
      Signed-off-by: default avatarDaniel Bristot de Oliveira <bristot@kernel.org>
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      d7458bc0
    • Paolo Bonzini's avatar
      KVM: SEV: unify cgroup cleanup code for svm_vm_migrate_from · 501cfe06
      Paolo Bonzini authored
      Use the same cleanup code independent of whether the cgroup to be
      uncharged and unref'd is the source or the destination cgroup.  Use a
      bool to track whether the destination cgroup has been charged, which also
      fixes a bug in the error case: the destination cgroup must be uncharged
      only if it does not match the source.
      
      Fixes: b5663931 ("KVM: SEV: Add support for SEV intra host migration")
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      501cfe06
    • Paolo Bonzini's avatar
      KVM: x86: move guest_pv_has out of user_access section · 3e067fd8
      Paolo Bonzini authored
      When UBSAN is enabled, the code emitted for the call to guest_pv_has
      includes a call to __ubsan_handle_load_invalid_value.  objtool
      complains that this call happens with UACCESS enabled; to avoid
      the warning, pull the calls to user_access_begin into both arms
      of the "if" statement, after the check for guest_pv_has.
      Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      3e067fd8
    • Dmitry Torokhov's avatar
      Merge branch 'next' into for-linus · efe6f16c
      Dmitry Torokhov authored
      Prepare input updates for 5.16 merge window.
      efe6f16c
    • Dave Airlie's avatar
      Merge tag 'drm-misc-fixes-2021-11-11' of git://anongit.freedesktop.org/drm/drm-misc into drm-next · b6c24725
      Dave Airlie authored
       * dma-buf: name_lock fixes
       * prime: Keep object ref during mmap
       * nouveau: Fix a refcount issue; Fix device removal; Protect client
         list with dedicated mutex; Fix address CE0 address calculation
       * ttm: Fix race condition during BO eviction
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Thomas Zimmermann <tzimmermann@suse.de>
      Link: https://patchwork.freedesktop.org/patch/msgid/YYzY6jeox9EeI15i@linux-uq9g.fritz.box
      b6c24725
  3. 11 Nov, 2021 13 commits
    • Dave Airlie's avatar
      BackMerge tag 'v5.15' into drm-next · 447212bb
      Dave Airlie authored
      I got a drm-fixes which had some 5.15 stuff in it, so to avoid
      the mess just backmerge here.
      
      Linux 5.15
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      447212bb
    • Linus Torvalds's avatar
      Merge tag 'pci-v5.16-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · 5833291a
      Linus Torvalds authored
      Pull PCI fixes from Bjorn Helgaas:
       "Revert conversion to struct device.driver instead of struct
        pci_dev.driver.
      
        The device.driver is set earlier, and using it caused the PCI core to
        call driver PM entry points before .probe() and after .remove(), when
        the driver isn't prepared.
      
        This caused NULL pointer dereferences in i2c_designware_pci and
        probably other driver issues"
      
      * tag 'pci-v5.16-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
        Revert "PCI: Use to_pci_driver() instead of pci_dev->driver"
        Revert "PCI: Remove struct pci_dev->driver"
      5833291a
    • Damien Le Moal's avatar
      libata: libahci: declare ahci_shost_attr_group as static · 1b87bda1
      Damien Le Moal authored
      ahci_shost_attr_group is referenced only in drivers/ata/libahci.c.
      Declare it as static.
      
      Fixes: c3f69c7f ("scsi: ata: Switch to attribute groups")
      Cc: Bart Van Assche <bvanassche@acm.org>
      Signed-off-by: default avatarDamien Le Moal <damien.lemoal@opensource.wdc.com>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      1b87bda1
    • Damien Le Moal's avatar
      libata: add horkage for missing Identify Device log · 636f6e2a
      Damien Le Moal authored
      ACS-3 introduced the ATA Identify Device Data log as mandatory. A
      warning message currently signals to the user if a device does not
      report supporting this log page in the log directory page, regardless
      of the ATA version of the device. Furthermore, this warning will appear
      for all attempts at accessing this missing log page during device
      revalidation.
      
      Since it is useless to constantly access the log directory and warn
      about this lack of support once we have discovered that the device
      does not support this log page, introduce the horkage flag
      ATA_HORKAGE_NO_ID_DEV_LOG to mark a device as lacking support for
      the Identify Device Data log page. Set this flag when
      ata_log_supported() returns false in ata_identify_page_supported().
      The warning is printed only if the device ATA level is 10 or above
      (ACS-3 or above), and only once on device scan. With this flag set, the
      log directory page is not accessed again to test for Identify Device
      Data log page support.
      Signed-off-by: default avatarDamien Le Moal <damien.lemoal@opensource.wdc.com>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Reviewed-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
      636f6e2a
    • Linus Torvalds's avatar
      Merge tag 'kcsan.2021.11.11a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu · ca2ef2d9
      Linus Torvalds authored
      Pull KCSAN updates from Paul McKenney:
       "This contains initialization fixups, testing improvements, addition of
        instruction pointer to data-race reports, and scoped data-race checks"
      
      * tag 'kcsan.2021.11.11a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu:
        kcsan: selftest: Cleanup and add missing __init
        kcsan: Move ctx to start of argument list
        kcsan: Support reporting scoped read-write access type
        kcsan: Start stack trace with explicit location if provided
        kcsan: Save instruction pointer for scoped accesses
        kcsan: Add ability to pass instruction pointer of access to reporting
        kcsan: test: Fix flaky test case
        kcsan: test: Use kunit_skip() to skip tests
        kcsan: test: Defer kcsan_test_init() after kunit initialization
      ca2ef2d9
    • Linus Torvalds's avatar
      Merge tag 'apparmor-pr-2021-11-10' of... · 5593a733
      Linus Torvalds authored
      Merge tag 'apparmor-pr-2021-11-10' of git://git.kernel.org/pub/scm/linux/kernel/git/jj/linux-apparmor
      
      Pull apparmor updates from John Johansen:
       "Features
         - use per file locks for transactional queries
         - update policy management capability checks to work with LSM stacking
      
        Bug Fixes:
         - check/put label on apparmor_sk_clone_security()
         - fix error check on update of label hname
         - fix introspection of of task mode for unconfined tasks
      
        Cleanups:
         - avoid -Wempty-body warning
         - remove duplicated 'Returns:' comments
         - fix doc warning
         - remove unneeded one-line hook wrappers
         - use struct_size() helper in kzalloc()
         - fix zero-length compiler warning in AA_BUG()
         - file.h: delete duplicated word
         - delete repeated words in comments
         - remove repeated declaration"
      
      * tag 'apparmor-pr-2021-11-10' of git://git.kernel.org/pub/scm/linux/kernel/git/jj/linux-apparmor:
        apparmor: remove duplicated 'Returns:' comments
        apparmor: remove unneeded one-line hook wrappers
        apparmor: Use struct_size() helper in kzalloc()
        apparmor: fix zero-length compiler warning in AA_BUG()
        apparmor: use per file locks for transactional queries
        apparmor: fix doc warning
        apparmor: Remove the repeated declaration
        apparmor: avoid -Wempty-body warning
        apparmor: Fix internal policy capable check for policy management
        apparmor: fix error check
        security: apparmor: delete repeated words in comments
        security: apparmor: file.h: delete duplicated word
        apparmor: switch to apparmor to internal capable check for policy management
        apparmor: update policy capable checks to use a label
        apparmor: fix introspection of of task mode for unconfined tasks
        apparmor: check/put label on apparmor_sk_clone_security()
      5593a733
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · dbf49896
      Linus Torvalds authored
      Merge more updates from Andrew Morton:
       "The post-linux-next material.
      
        7 patches.
      
        Subsystems affected by this patch series (all mm): debug,
        slab-generic, migration, memcg, and kasan"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        kasan: add kasan mode messages when kasan init
        mm: unexport {,un}lock_page_memcg
        mm: unexport folio_memcg_{,un}lock
        mm/migrate.c: remove MIGRATE_PFN_LOCKED
        mm: migrate: simplify the file-backed pages validation when migrating its mapping
        mm: allow only SLUB on PREEMPT_RT
        mm/page_owner.c: modify the type of argument "order" in some functions
      dbf49896
    • Linus Torvalds's avatar
      Merge tag 'm68knommu-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu · 6d76f6eb
      Linus Torvalds authored
      Pull m68knommu updates from Greg Ungerer:
       "Only two changes.
      
        One removes the now unused CONFIG_MCPU32 symbol. The other sets a
        default for the CONFIG_MEMORY_RESERVE config symbol (this aids
        scripting and other automation) so you don't interactively get asked
        for a value at configure time.
      
        Summary:
      
         - remove unused CONFIG_MCPU32 symbol
      
         - default CONFIG_MEMORY_RESERVE value (for scripting)"
      
      * tag 'm68knommu-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
        m68knommu: Remove MCPU32 config symbol
        m68k: set a default value for MEMORY_RESERVE
      6d76f6eb
    • Bjorn Helgaas's avatar
      Revert "PCI: Use to_pci_driver() instead of pci_dev->driver" · e0217c5b
      Bjorn Helgaas authored
      This reverts commit 2a4d9408.
      
      Robert reported a NULL pointer dereference caused by the PCI core
      (local_pci_probe()) calling the i2c_designware_pci driver's
      .runtime_resume() method before the .probe() method.  i2c_dw_pci_resume()
      depends on initialization done by i2c_dw_pci_probe().
      
      Prior to 2a4d9408 ("PCI: Use to_pci_driver() instead of
      pci_dev->driver"), pci_pm_runtime_resume() avoided calling the
      .runtime_resume() method because pci_dev->driver had not been set yet.
      
      2a4d9408 and b5f9c644 ("PCI: Remove struct pci_dev->driver"),
      removed pci_dev->driver, replacing it by device->driver, which *has* been
      set by this time, so pci_pm_runtime_resume() called the .runtime_resume()
      method when it previously had not.
      
      Fixes: 2a4d9408 ("PCI: Use to_pci_driver() instead of pci_dev->driver")
      Link: https://lore.kernel.org/linux-i2c/CAP145pgdrdiMAT7=-iB1DMgA7t_bMqTcJL4N0=6u8kNY3EU0dw@mail.gmail.com/Reported-by: default avatarRobert Święcki <robert@swiecki.net>
      Tested-by: default avatarRobert Święcki <robert@swiecki.net>
      Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      e0217c5b
    • Bjorn Helgaas's avatar
      Revert "PCI: Remove struct pci_dev->driver" · 68da4e0e
      Bjorn Helgaas authored
      This reverts commit b5f9c644.
      
      Revert b5f9c644 ("PCI: Remove struct pci_dev->driver"), which is needed
      to revert 2a4d9408 ("PCI: Use to_pci_driver() instead of
      pci_dev->driver").
      
      2a4d9408 caused a NULL pointer dereference reported by Robert Święcki.
      Details in the revert of that commit.
      
      Fixes: 2a4d9408 ("PCI: Use to_pci_driver() instead of pci_dev->driver")
      Link: https://lore.kernel.org/linux-i2c/CAP145pgdrdiMAT7=-iB1DMgA7t_bMqTcJL4N0=6u8kNY3EU0dw@mail.gmail.com/Reported-by: default avatarRobert Święcki <robert@swiecki.net>
      Tested-by: default avatarRobert Święcki <robert@swiecki.net>
      Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      68da4e0e
    • Linus Torvalds's avatar
      Merge tag 'trace-v5.16-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 600b18f8
      Linus Torvalds authored
      Pull tracing fixes from Steven Rostedt:
       "Two locking fixes:
      
         - Add mutex protection to ring_buffer_reset()
      
         - Fix deadlock in modify_ftrace_direct_multi()"
      
      * tag 'trace-v5.16-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        ftrace/direct: Fix lockup in modify_ftrace_direct_multi
        ring-buffer: Protect ring_buffer_reset() from reentrancy
      600b18f8
    • Linus Torvalds's avatar
      Merge tag 'net-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · f54ca91f
      Linus Torvalds authored
      Pull networking fixes from Jakub Kicinski:
       "Including fixes from bpf, can and netfilter.
      
        Current release - regressions:
      
         - bpf: do not reject when the stack read size is different from the
           tracked scalar size
      
         - net: fix premature exit from NAPI state polling in napi_disable()
      
         - riscv, bpf: fix RV32 broken build, and silence RV64 warning
      
        Current release - new code bugs:
      
         - net: fix possible NULL deref in sock_reserve_memory
      
         - amt: fix error return code in amt_init(); fix stopping the
           workqueue
      
         - ax88796c: use the correct ioctl callback
      
        Previous releases - always broken:
      
         - bpf: stop caching subprog index in the bpf_pseudo_func insn
      
         - security: fixups for the security hooks in sctp
      
         - nfc: add necessary privilege flags in netlink layer, limit
           operations to admin only
      
         - vsock: prevent unnecessary refcnt inc for non-blocking connect
      
         - net/smc: fix sk_refcnt underflow on link down and fallback
      
         - nfnetlink_queue: fix OOB when mac header was cleared
      
         - can: j1939: ignore invalid messages per standard
      
         - bpf, sockmap:
            - fix race in ingress receive verdict with redirect to self
            - fix incorrect sk_skb data_end access when src_reg = dst_reg
            - strparser, and tls are reusing qdisc_skb_cb and colliding
      
         - ethtool: fix ethtool msg len calculation for pause stats
      
         - vlan: fix a UAF in vlan_dev_real_dev() when ref-holder tries to
           access an unregistering real_dev
      
         - udp6: make encap_rcv() bump the v6 not v4 stats
      
         - drv: prestera: add explicit padding to fix m68k build
      
         - drv: felix: fix broken VLAN-tagged PTP under VLAN-aware bridge
      
         - drv: mvpp2: fix wrong SerDes reconfiguration order
      
        Misc & small latecomers:
      
         - ipvs: auto-load ipvs on genl access
      
         - mctp: sanity check the struct sockaddr_mctp padding fields
      
         - libfs: support RENAME_EXCHANGE in simple_rename()
      
         - avoid double accounting for pure zerocopy skbs"
      
      * tag 'net-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (123 commits)
        selftests/net: udpgso_bench_rx: fix port argument
        net: wwan: iosm: fix compilation warning
        cxgb4: fix eeprom len when diagnostics not implemented
        net: fix premature exit from NAPI state polling in napi_disable()
        net/smc: fix sk_refcnt underflow on linkdown and fallback
        net/mlx5: Lag, fix a potential Oops with mlx5_lag_create_definer()
        gve: fix unmatched u64_stats_update_end()
        net: ethernet: lantiq_etop: Fix compilation error
        selftests: forwarding: Fix packet matching in mirroring selftests
        vsock: prevent unnecessary refcnt inc for nonblocking connect
        net: marvell: mvpp2: Fix wrong SerDes reconfiguration order
        net: ethernet: ti: cpsw_ale: Fix access to un-initialized memory
        net: stmmac: allow a tc-taprio base-time of zero
        selftests: net: test_vxlan_under_vrf: fix HV connectivity test
        net: hns3: allow configure ETS bandwidth of all TCs
        net: hns3: remove check VF uc mac exist when set by PF
        net: hns3: fix some mac statistics is always 0 in device version V2
        net: hns3: fix kernel crash when unload VF while it is being reset
        net: hns3: sync rx ring head in echo common pull
        net: hns3: fix pfc packet number incorrect after querying pfc parameters
        ...
      f54ca91f
    • Linus Torvalds's avatar
      Merge tag 'char-misc-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · c55a0417
      Linus Torvalds authored
      Pull char/misc fix from Greg KH:
       "Here is a single fix for 5.16-rc1 to resolve a build problem that came
        in through the coresight tree (and as such came in through the
        char/misc tree merge in the 5.16-rc1 merge window).
      
        It resolves a build problem with 'allmodconfig' on arm64 and is acked
        by the proper subsystem maintainers. It has been in linux-next all
        week with no reported problems"
      
      * tag 'char-misc-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
        arm64: cpufeature: Export this_cpu_has_cap helper
      c55a0417