1. 04 Jun, 2023 3 commits
    • Linus Torvalds's avatar
      Merge tag 'usb-6.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 8b435e40
      Linus Torvalds authored
      Pull USB fixes from Greg KH:
       "Here are some USB driver and core fixes for 6.4-rc5. Most of these are
        tiny driver fixes, including:
      
         - udc driver bugfix
      
         - f_fs gadget driver bugfix
      
         - cdns3 driver bugfix
      
         - typec bugfixes
      
        But the "big" thing in here is a fix yet-again for how the USB buffers
        are handled from userspace when dealing with DMA issues. The changes
        were discussed a lot, and tested a lot, on the list, and acked by the
        relevant mm maintainers and have been in linux-next all this past week
        with no reported problems"
      
      * tag 'usb-6.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        usb: typec: tps6598x: Fix broken polling mode after system suspend/resume
        mm: page_table_check: Ensure user pages are not slab pages
        mm: page_table_check: Make it dependent on EXCLUSIVE_SYSTEM_RAM
        usb: usbfs: Use consistent mmap functions
        usb: usbfs: Enforce page requirements for mmap
        dt-bindings: usb: snps,dwc3: Fix "snps,hsphy_interface" type
        usb: gadget: udc: fix NULL dereference in remove()
        usb: gadget: f_fs: Add unbind event before functionfs_unbind
        usb: cdns3: fix NCM gadget RX speed 20x slow than expection at iMX8QM
      8b435e40
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · b066935b
      Linus Torvalds authored
      Pull kvm fixes from Paolo Bonzini:
       "ARM:
      
         - Address some fallout of the locking rework, this time affecting the
           way the vgic is configured
      
         - Fix an issue where the page table walker frees a subtree and then
           proceeds with walking what it has just freed...
      
         - Check that a given PA donated to the guest is actually memory (only
           affecting pKVM)
      
         - Correctly handle MTE CMOs by Set/Way
      
         - Fix the reported address of a watchpoint forwarded to userspace
      
         - Fix the freeing of the root of stage-2 page tables
      
         - Stop creating spurious PMU events to perform detection of the
           default PMU and use the existing PMU list instead
      
        x86:
      
         - Fix a memslot lookup bug in the NX recovery thread that could
           theoretically let userspace bypass the NX hugepage mitigation
      
         - Fix a s/BLOCKING/PENDING bug in SVM's vNMI support
      
         - Account exit stats for fastpath VM-Exits that never leave the super
           tight run-loop
      
         - Fix an out-of-bounds bug in the optimized APIC map code, and add a
           regression test for the race"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: selftests: Add test for race in kvm_recalculate_apic_map()
        KVM: x86: Bail from kvm_recalculate_phys_map() if x2APIC ID is out-of-bounds
        KVM: x86: Account fastpath-only VM-Exits in vCPU stats
        KVM: SVM: vNMI pending bit is V_NMI_PENDING_MASK not V_NMI_BLOCKING_MASK
        KVM: x86/mmu: Grab memslot for correct address space in NX recovery worker
        KVM: arm64: Document default vPMU behavior on heterogeneous systems
        KVM: arm64: Iterate arm_pmus list to probe for default PMU
        KVM: arm64: Drop last page ref in kvm_pgtable_stage2_free_removed()
        KVM: arm64: Populate fault info for watchpoint
        KVM: arm64: Reload PTE after invoking walker callback on preorder traversal
        KVM: arm64: Handle trap of tagged Set/Way CMOs
        arm64: Add missing Set/Way CMO encodings
        KVM: arm64: Prevent unconditional donation of unmapped regions from the host
        KVM: arm64: vgic: Fix a comment
        KVM: arm64: vgic: Fix locking comment
        KVM: arm64: vgic: Wrap vgic_its_create() with config_lock
        KVM: arm64: vgic: Fix a circular locking issue
      b066935b
    • Linus Torvalds's avatar
      Merge tag 'powerpc-6.4-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 9455b4b6
      Linus Torvalds authored
      Pull powerpc fixes from Michael Ellerman:
      
       - Fix link errors in new aes-gcm-p10 code when built-in with other
         drivers
      
       - Limit number of TCEs passed to H_STUFF_TCE hcall as per spec
      
       - Use KSYM_NAME_LEN in xmon array size to avoid possible OOB write
      
      Thanks to Gaurav Batra and Maninder Singh Vishal Chourasia.
      
      * tag 'powerpc-6.4-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/xmon: Use KSYM_NAME_LEN in array size
        powerpc/iommu: Limit number of TCEs to 512 for H_STUFF_TCE hcall
        powerpc/crypto: Fix aes-gcm-p10 link errors
      9455b4b6
  2. 03 Jun, 2023 10 commits
  3. 02 Jun, 2023 20 commits
  4. 01 Jun, 2023 7 commits
    • Dave Airlie's avatar
      Merge tag 'amd-drm-fixes-6.4-2023-05-31' of... · f9e94d6c
      Dave Airlie authored
      Merge tag 'amd-drm-fixes-6.4-2023-05-31' of https://gitlab.freedesktop.org/agd5f/linux into drm-fixes
      
      amd-drm-fixes-6.4-2023-05-31:
      
      amdgpu:
      - Fix mclk and fclk output ordering on some APUs
      - Fix display regression with 5K VRR
      - VCN, JPEG spurious interrupt warning fixes
      - Fix SI DPM on some ARM64 platforms
      - Fix missing TMZ enablement on GC 11.0.1
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Alex Deucher <alexander.deucher@amd.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230601033846.7628-1-alexander.deucher@amd.com
      f9e94d6c
    • Linus Torvalds's avatar
      Merge tag 'fbdev-for-6.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/linux-fbdev · 9e87b63e
      Linus Torvalds authored
      Pull fbdev fixes from Helge Deller:
       "Most notable is a fix for a null-ptr-deref in fbcon's soft_cursor
        function which was found by syzbot.
      
         - Fix null-ptr-deref in soft_cursor
      
         - various remove callback conversions
      
         - error path fixes in imsttfb"
      
      * tag 'fbdev-for-6.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/linux-fbdev:
        fbdev: bw2: Convert to platform remove callback returning void
        fbdev: broadsheetfb: Convert to platform remove callback returning void
        fbdev: au1200fb: Convert to platform remove callback returning void
        fbdev: au1100fb: Convert to platform remove callback returning void
        fbdev: arcfb: Convert to platform remove callback returning void
        fbdev: au1100fb: Drop if with an always false condition
        fbcon: Fix null-ptr-deref in soft_cursor
        fbdev: imsttfb: Fix error path of imsttfb_probe()
        fbdev: imsttfb: Release framebuffer and dealloc cmap on error path
        fbdev: matroxfb ssd1307fb: Switch i2c drivers back to use .probe()
      9e87b63e
    • Lucas De Marchi's avatar
      module/decompress: Fix error checking on zstd decompression · fadb74f9
      Lucas De Marchi authored
      While implementing support for in-kernel decompression in kmod,
      finit_module() was returning a very suspicious value:
      
      	finit_module(3, "", MODULE_INIT_COMPRESSED_FILE) = 18446744072717407296
      
      It turns out the check for module_get_next_page() failing is wrong,
      and hence the decompression was not really taking place. Invert
      the condition to fix it.
      
      Fixes: 169a58ad ("module/decompress: Support zstd in-kernel decompression")
      Cc: stable@kernel.org
      Cc: Luis Chamberlain <mcgrof@kernel.org>
      Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
      Cc: Stephen Boyd <swboyd@chromium.org>
      Signed-off-by: default avatarLucas De Marchi <lucas.demarchi@intel.com>
      Signed-off-by: default avatarLuis Chamberlain <mcgrof@kernel.org>
      fadb74f9
    • Linus Torvalds's avatar
      Merge tag 'mtd/fixes-for-6.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux · b0e78154
      Linus Torvalds authored
      Pull mtd fixes from Miquel Raynal:
       "MTD core:
         - MAINTAINERS: Add Michal as reviewer instead of Naga
         - mtdchar: Mark bits of ioctl handler noinline
      
        NAND controller drivers:
         - marvell:
             - Don't set the NAND frequency select
             - Ensure timing values are written
         - ingenic: Fix empty stub helper definitions
      
        SPI-NOR core:
         - Fix divide by zero for spi-nor-generic flashes
      
        SPI-NOR manufacturer driver:
         - spansion: make sure local struct does not contain garbage"
      
      * tag 'mtd/fixes-for-6.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux:
        mtd: rawnand: marvell: don't set the NAND frequency select
        mtd: rawnand: marvell: ensure timing values are written
        mtdchar: mark bits of ioctl handler noinline
        MAINTAINERS: Add myself as reviewer instead of Naga
        mtd: spi-nor: Fix divide by zero for spi-nor-generic flashes
        mtd: rawnand: ingenic: fix empty stub helper definitions
        mtd: spi-nor: spansion: make sure local struct does not contain garbage
      b0e78154
    • Linus Torvalds's avatar
      Merge tag 'net-6.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · 714069da
      Linus Torvalds authored
      Pull networking fixes from Jakub Kicinski:
       "Happy Wear a Dress Day.
      
        Fairly standard-sized batch of fixes, accounting for the lack of
        sub-tree submissions this week. The mlx5 IRQ fixes are notable, people
        were complaining about that. No fires burning.
      
        Current release - regressions:
      
         - eth: mlx5e:
            - multiple fixes for dynamic IRQ allocation
            - prevent encap offload when neigh update is running
      
         - eth: mana: fix perf regression: remove rx_cqes, tx_cqes counters
      
        Current release - new code bugs:
      
         - eth: mlx5e: DR, add missing mutex init/destroy in pattern manager
      
        Previous releases - always broken:
      
         - tcp: deny tcp_disconnect() when threads are waiting
      
         - sched: prevent ingress Qdiscs from getting installed in random
           locations in the hierarchy and moving around
      
         - sched: flower: fix possible OOB write in fl_set_geneve_opt()
      
         - netlink: fix NETLINK_LIST_MEMBERSHIPS length report
      
         - udp6: fix race condition in udp6_sendmsg & connect
      
         - tcp: fix mishandling when the sack compression is deferred
      
         - rtnetlink: validate link attributes set at creation time
      
         - mptcp: fix connect timeout handling
      
         - eth: stmmac: fix call trace when stmmac_xdp_xmit() is invoked
      
         - eth: amd-xgbe: fix the false linkup in xgbe_phy_status
      
         - eth: mlx5e:
            - fix corner cases in internal buffer configuration
            - drain health before unregistering devlink
      
         - usb: qmi_wwan: set DTR quirk for BroadMobi BM818
      
        Misc:
      
         - tcp: return user_mss for TCP_MAXSEG in CLOSE/LISTEN state if
           user_mss set"
      
      * tag 'net-6.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (71 commits)
        mptcp: fix active subflow finalization
        mptcp: add annotations around sk->sk_shutdown accesses
        mptcp: fix data race around msk->first access
        mptcp: consolidate passive msk socket initialization
        mptcp: add annotations around msk->subflow accesses
        mptcp: fix connect timeout handling
        rtnetlink: add the missing IFLA_GRO_ tb check in validate_linkmsg
        rtnetlink: move IFLA_GSO_ tb check to validate_linkmsg
        rtnetlink: call validate_linkmsg in rtnl_create_link
        ice: recycle/free all of the fragments from multi-buffer frame
        net: phy: mxl-gpy: extend interrupt fix to all impacted variants
        net: renesas: rswitch: Fix return value in error path of xmit
        net: dsa: mv88e6xxx: Increase wait after reset deactivation
        net: ipa: Use correct value for IPA_STATUS_SIZE
        tcp: fix mishandling when the sack compression is deferred.
        net/sched: flower: fix possible OOB write in fl_set_geneve_opt()
        sfc: fix error unwinds in TC offload
        net/mlx5: Read embedded cpu after init bit cleared
        net/mlx5e: Fix error handling in mlx5e_refresh_tirs
        net/mlx5: Ensure af_desc.mask is properly initialized
        ...
      714069da
    • Mike Christie's avatar
      fork, vhost: Use CLONE_THREAD to fix freezer/ps regression · f9010dbd
      Mike Christie authored
      When switching from kthreads to vhost_tasks two bugs were added:
      1. The vhost worker tasks's now show up as processes so scripts doing
      ps or ps a would not incorrectly detect the vhost task as another
      process.  2. kthreads disabled freeze by setting PF_NOFREEZE, but
      vhost tasks's didn't disable or add support for them.
      
      To fix both bugs, this switches the vhost task to be thread in the
      process that does the VHOST_SET_OWNER ioctl, and has vhost_worker call
      get_signal to support SIGKILL/SIGSTOP and freeze signals. Note that
      SIGKILL/STOP support is required because CLONE_THREAD requires
      CLONE_SIGHAND which requires those 2 signals to be supported.
      
      This is a modified version of the patch written by Mike Christie
      <michael.christie@oracle.com> which was a modified version of patch
      originally written by Linus.
      
      Much of what depended upon PF_IO_WORKER now depends on PF_USER_WORKER.
      Including ignoring signals, setting up the register state, and having
      get_signal return instead of calling do_group_exit.
      
      Tidied up the vhost_task abstraction so that the definition of
      vhost_task only needs to be visible inside of vhost_task.c.  Making
      it easier to review the code and tell what needs to be done where.
      As part of this the main loop has been moved from vhost_worker into
      vhost_task_fn.  vhost_worker now returns true if work was done.
      
      The main loop has been updated to call get_signal which handles
      SIGSTOP, freezing, and collects the message that tells the thread to
      exit as part of process exit.  This collection clears
      __fatal_signal_pending.  This collection is not guaranteed to
      clear signal_pending() so clear that explicitly so the schedule()
      sleeps.
      
      For now the vhost thread continues to exist and run work until the
      last file descriptor is closed and the release function is called as
      part of freeing struct file.  To avoid hangs in the coredump
      rendezvous and when killing threads in a multi-threaded exec.  The
      coredump code and de_thread have been modified to ignore vhost threads.
      
      Remvoing the special case for exec appears to require teaching
      vhost_dev_flush how to directly complete transactions in case
      the vhost thread is no longer running.
      
      Removing the special case for coredump rendezvous requires either the
      above fix needed for exec or moving the coredump rendezvous into
      get_signal.
      
      Fixes: 6e890c5d ("vhost: use vhost_tasks for worker threads")
      Signed-off-by: default avatarEric W. Biederman <ebiederm@xmission.com>
      Co-developed-by: default avatarMike Christie <michael.christie@oracle.com>
      Signed-off-by: default avatarMike Christie <michael.christie@oracle.com>
      Acked-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      f9010dbd
    • Paul Moore's avatar
      selinux: don't use make's grouped targets feature yet · 42c4e97e
      Paul Moore authored
      The Linux Kernel currently only requires make v3.82 while the grouped
      target functionality requires make v4.3.  Removed the grouped target
      introduced in 4ce1f694 ("selinux: ensure av_permissions.h is
      built when needed") as well as the multiple header file targets in
      the make rule.  This effectively reverts the problem commit.
      
      We will revisit this change when make >= 4.3 is required by the rest
      of the kernel.
      
      Cc: stable@vger.kernel.org
      Fixes: 4ce1f694 ("selinux: ensure av_permissions.h is built when needed")
      Reported-by: default avatarErwan Velu <e.velu@criteo.com>
      Reported-by: default avatarLuiz Capitulino <luizcap@amazon.com>
      Tested-by: default avatarLuiz Capitulino <luizcap@amazon.com>
      Signed-off-by: default avatarPaul Moore <paul@paul-moore.com>
      42c4e97e