1. 09 Sep, 2023 17 commits
    • David Howells's avatar
      iov_iter: Kunit tests for page extraction · a3c57ab7
      David Howells authored
      Add some kunit tests for page extraction for ITER_BVEC, ITER_KVEC and
      ITER_XARRAY type iterators.  ITER_UBUF and ITER_IOVEC aren't dealt with
      as they require userspace VM interaction.  ITER_DISCARD isn't dealt with
      either as that can't be extracted.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Christian Brauner <brauner@kernel.org>
      Cc: Jens Axboe <axboe@kernel.dk>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: David Hildenbrand <david@redhat.com>
      Cc: John Hubbard <jhubbard@nvidia.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a3c57ab7
    • David Howells's avatar
      iov_iter: Kunit tests for copying to/from an iterator · 2d71340f
      David Howells authored
      Add some kunit tests for page extraction for ITER_BVEC, ITER_KVEC and
      ITER_XARRAY type iterators.  ITER_UBUF and ITER_IOVEC aren't dealt with
      as they require userspace VM interaction.  ITER_DISCARD isn't dealt with
      either as that does nothing.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Christian Brauner <brauner@kernel.org>
      Cc: Jens Axboe <axboe@kernel.dk>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: David Hildenbrand <david@redhat.com>
      Cc: John Hubbard <jhubbard@nvidia.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      2d71340f
    • David Howells's avatar
      iov_iter: Fix iov_iter_extract_pages() with zero-sized entries · f741bd71
      David Howells authored
      iov_iter_extract_pages() doesn't correctly handle skipping over initial
      zero-length entries in ITER_KVEC and ITER_BVEC-type iterators.
      
      The problem is that it accidentally reduces maxsize to 0 when it
      skipping and thus runs to the end of the array and returns 0.
      
      Fix this by sticking the calculated size-to-copy in a new variable
      rather than back in maxsize.
      
      Fixes: 7d58fe73 ("iov_iter: Add a function to extract a page list from an iterator")
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Cc: Christian Brauner <brauner@kernel.org>
      Cc: Jens Axboe <axboe@kernel.dk>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: David Hildenbrand <david@redhat.com>
      Cc: John Hubbard <jhubbard@nvidia.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      f741bd71
    • Linus Torvalds's avatar
      Merge tag 'sh-for-v6.6-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/glaubitz/sh-linux · 6b8bb5b8
      Linus Torvalds authored
      Pull sh updates from Adrian Glaubitz:
      
       - Fix a use-after-free bug in the push-switch driver (Duoming Zhou)
      
       - Fix calls to dma_declare_coherent_memory() that incorrectly passed
         the buffer end address instead of the buffer size as the size
         parameter
      
      * tag 'sh-for-v6.6-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/glaubitz/sh-linux:
        sh: push-switch: Reorder cleanup operations to avoid use-after-free bug
        sh: boards: Fix CEU buffer size passed to dma_declare_coherent_memory()
      6b8bb5b8
    • Linus Torvalds's avatar
      Merge tag 'riscv-for-linus-6.6-mw2-2' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux · 1b37a0a2
      Linus Torvalds authored
      Pull more RISC-V updates from Palmer Dabbelt:
      
       - The kernel now dynamically probes for misaligned access speed, as
         opposed to relying on a table of known implementations.
      
       - Support for non-coherent devices on systems using the Andes AX45MP
         core, including the RZ/Five SoCs.
      
       - Support for the V extension in ptrace(), again.
      
       - Support for KASLR.
      
       - Support for the BPF prog pack allocator in RISC-V.
      
       - A handful of bug fixes and cleanups.
      
      * tag 'riscv-for-linus-6.6-mw2-2' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (25 commits)
        soc: renesas: Kconfig: For ARCH_R9A07G043 select the required configs if dependencies are met
        riscv: Kconfig.errata: Add dependency for RISCV_SBI in ERRATA_ANDES config
        riscv: Kconfig.errata: Drop dependency for MMU in ERRATA_ANDES_CMO config
        riscv: Kconfig: Select DMA_DIRECT_REMAP only if MMU is enabled
        bpf, riscv: use prog pack allocator in the BPF JIT
        riscv: implement a memset like function for text
        riscv: extend patch_text_nosync() for multiple pages
        bpf: make bpf_prog_pack allocator portable
        riscv: libstub: Implement KASLR by using generic functions
        libstub: Fix compilation warning for rv32
        arm64: libstub: Move KASLR handling functions to kaslr.c
        riscv: Dump out kernel offset information on panic
        riscv: Introduce virtual kernel mapping KASLR
        RISC-V: Add ptrace support for vectors
        soc: renesas: Kconfig: Select the required configs for RZ/Five SoC
        cache: Add L2 cache management for Andes AX45MP RISC-V core
        dt-bindings: cache: andestech,ax45mp-cache: Add DT binding documentation for L2 cache controller
        riscv: mm: dma-noncoherent: nonstandard cache operations support
        riscv: errata: Add Andes alternative ports
        riscv: asm: vendorid_list: Add Andes Technology to the vendors list
        ...
      1b37a0a2
    • Duoming Zhou's avatar
      sh: push-switch: Reorder cleanup operations to avoid use-after-free bug · 246f80a0
      Duoming Zhou authored
      The original code puts flush_work() before timer_shutdown_sync()
      in switch_drv_remove(). Although we use flush_work() to stop
      the worker, it could be rescheduled in switch_timer(). As a result,
      a use-after-free bug can occur. The details are shown below:
      
            (cpu 0)                    |      (cpu 1)
      switch_drv_remove()              |
       flush_work()                    |
        ...                            |  switch_timer // timer
                                       |   schedule_work(&psw->work)
       timer_shutdown_sync()           |
       ...                             |  switch_work_handler // worker
       kfree(psw) // free              |
                                       |   psw->state = 0 // use
      
      This patch puts timer_shutdown_sync() before flush_work() to
      mitigate the bugs. As a result, the worker and timer will be
      stopped safely before the deallocate operations.
      
      Fixes: 9f5e8eee ("sh: generic push-switch framework.")
      Signed-off-by: default avatarDuoming Zhou <duoming@zju.edu.cn>
      Reviewed-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
      Reviewed-by: default avatarJohn Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
      Link: https://lore.kernel.org/r/20230802033737.9738-1-duoming@zju.edu.cnSigned-off-by: default avatarJohn Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
      246f80a0
    • Petr Tesarik's avatar
      sh: boards: Fix CEU buffer size passed to dma_declare_coherent_memory() · fb60211f
      Petr Tesarik authored
      In all these cases, the last argument to dma_declare_coherent_memory() is
      the buffer end address, but the expected value should be the size of the
      reserved region.
      
      Fixes: 39fb9930 ("media: arch: sh: ap325rxa: Use new renesas-ceu camera driver")
      Fixes: c2f9b05f ("media: arch: sh: ecovec: Use new renesas-ceu camera driver")
      Fixes: f3590dc3 ("media: arch: sh: kfr2r09: Use new renesas-ceu camera driver")
      Fixes: 186c446f ("media: arch: sh: migor: Use new renesas-ceu camera driver")
      Fixes: 1a3c230b ("media: arch: sh: ms7724se: Use new renesas-ceu camera driver")
      Signed-off-by: default avatarPetr Tesarik <petr.tesarik.ext@huawei.com>
      Reviewed-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
      Reviewed-by: default avatarJacopo Mondi <jacopo.mondi@ideasonboard.com>
      Reviewed-by: default avatarJohn Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
      Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
      Link: https://lore.kernel.org/r/20230724120742.2187-1-petrtesarik@huaweicloud.comSigned-off-by: default avatarJohn Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
      fb60211f
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 2a5a4326
      Linus Torvalds authored
      Pull more SCSI updates from James Bottomley:
       "Mostly small stragglers that missed the initial merge.
      
        Driver updates are qla2xxx and smartpqi (mp3sas has a high diffstat
        due to the volatile qualifier removal, fnic due to unused function
        removal and sd.c has a lot of code shuffling to remove forward
        declarations)"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (38 commits)
        scsi: ufs: core: No need to update UPIU.header.flags and lun in advanced RPMB handler
        scsi: ufs: core: Add advanced RPMB support where UFSHCI 4.0 does not support EHS length in UTRD
        scsi: mpt3sas: Remove volatile qualifier
        scsi: mpt3sas: Perform additional retries if doorbell read returns 0
        scsi: libsas: Simplify sas_queue_reset() and remove unused code
        scsi: ufs: Fix the build for the old ARM OABI
        scsi: qla2xxx: Fix unused variable warning in qla2xxx_process_purls_pkt()
        scsi: fnic: Remove unused functions fnic_scsi_host_start/end_tag()
        scsi: qla2xxx: Fix spelling mistake "tranport" -> "transport"
        scsi: fnic: Replace sgreset tag with max_tag_id
        scsi: qla2xxx: Remove unused variables in qla24xx_build_scsi_type_6_iocbs()
        scsi: qla2xxx: Fix nvme_fc_rcv_ls_req() undefined error
        scsi: smartpqi: Change driver version to 2.1.24-046
        scsi: smartpqi: Enhance error messages
        scsi: smartpqi: Enhance controller offline notification
        scsi: smartpqi: Enhance shutdown notification
        scsi: smartpqi: Simplify lun_number assignment
        scsi: smartpqi: Rename pciinfo to pci_info
        scsi: smartpqi: Rename MACRO to clarify purpose
        scsi: smartpqi: Add abort handler
        ...
      2a5a4326
    • Linus Torvalds's avatar
      Merge tag 'driver-core-6.6-rc1-2' of... · 6b41fb27
      Linus Torvalds authored
      Merge tag 'driver-core-6.6-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver symbol lookup fix from Greg KH:
       "Here is one last fixup for your tree for 6.6-rc1. It resolves a
        problem with the way that symbol_get was changed in the module tree
        merge in your tree to fix up the DVB drivers which rely on this old
        api to attach new devices.
      
        As the changelog comment says:
      
          In commit 9011e49d ("modules: only allow symbol_get of
          EXPORT_SYMBOL_GPL modules") the use of symbol_get is properly
          restricted to GPL-only marked symbols. This interacts oddly with the
          DVB logic which only uses dvb_attach() to load the dvb driver which
          then uses symbol_get().
      
          Fix this up by properly marking all of the dvb_attach attach symbols
          as EXPORT_SYMBOL_GPL().
      
        This has been acked by Hans from the V4L driver side, Luis from the
        module side, Mauro on the media side, and Christoph said it was the
        correct solution, and was tested by the original reporter of the
        issue.
      
        It has passed 0-day testing, but has not been in linux-next due to it
        only being sent yesterday"
      
      * tag 'driver-core-6.6-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        media: dvb: symbol fixup for dvb_attach()
      6b41fb27
    • Linus Torvalds's avatar
      Merge tag 'dma-mapping-6.6-2023-09-09' of git://git.infradead.org/users/hch/dma-mapping · 474197a4
      Linus Torvalds authored
      Pull dma-mapping fixes from Christoph Hellwig:
      
       - move a dma-debug call that prints a message out from a lock that's
         causing problems with the lock order in serial drivers (Sergey
         Senozhatsky)
      
       - fix the CONFIG_DMA_NUMA_CMA Kconfig entry to have the right
         dependency and not default to y (Christoph Hellwig)
      
       - move an ifdef a bit to remove a __maybe_unused that seems to trip up
         some sensitivities (Christoph Hellwig)
      
       - revert a bogus check in the CMA allocator (Zhenhua Huang)
      
      * tag 'dma-mapping-6.6-2023-09-09' of git://git.infradead.org/users/hch/dma-mapping:
        Revert "dma-contiguous: check for memory region overlap"
        dma-pool: remove a __maybe_unused label in atomic_pool_expand
        dma-contiguous: fix the Kconfig entry for CONFIG_DMA_NUMA_CMA
        dma-debug: don't call __dma_entry_alloc_check_leak() under free_entries_lock
      474197a4
    • Linus Torvalds's avatar
      Merge tag 'pci-v6.6-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci · 060249b5
      Linus Torvalds authored
      Pull PCI fixes from Bjorn Helgaas:
      
       - Add PCI_DYNAMIC_OF_NODES dependency on OF_IRQ to fix sparc64 build
         error (Lizhi Hou)
      
       - After coalescing host bridge resources, free any released resources
         to avoid a leak (Ross Lagerwall)
      
       - Revert a quirk that prevented NVIDIA T4 GPUs from using Secondary Bus
         Reset. The quirk worked around an issue that we now think is related
         to the Root Port, not the GPU (Bjorn Helgaas)
      
      * tag 'pci-v6.6-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci:
        Revert "PCI: Mark NVIDIA T4 GPUs to avoid bus reset"
        PCI: Free released resource after coalescing
        PCI: Fix CONFIG_PCI_DYNAMIC_OF_NODES kconfig dependencies
      060249b5
    • Linus Torvalds's avatar
      Merge tag 'ntb-6.6' of https://github.com/jonmason/ntb · fa9d4bf5
      Linus Torvalds authored
      Pull NTB updates from Jon Mason:
       "Link toggling fixes and debugfs error path fixes"
      
      [ And for everybody like me who always have to remind themselves what
        the TLA of the day is, and what NTB stands for - it's a PCIe
        "Non-Transparent Bridge" thing    - Linus ]
      
      * tag 'ntb-6.6' of https://github.com/jonmason/ntb:
        ntb: Check tx descriptors outstanding instead of head/tail for tx queue
        ntb: Fix calculation ntb_transport_tx_free_entry()
        ntb: Drop packets when qp link is down
        ntb: Clean up tx tail index on link down
        ntb: amd: Drop unnecessary error check for debugfs_create_dir
        NTB: ntb_tool: Switch to memdup_user_nul() helper
        dtivers: ntb: fix parameter check in perf_setup_dbgfs()
        ntb: Remove error checking for debugfs_create_dir()
      fa9d4bf5
    • Greg Kroah-Hartman's avatar
      media: dvb: symbol fixup for dvb_attach() · 86495af1
      Greg Kroah-Hartman authored
      In commit 9011e49d ("modules: only allow symbol_get of
      EXPORT_SYMBOL_GPL modules") the use of symbol_get is properly restricted
      to GPL-only marked symbols.  This interacts oddly with the DVB logic
      which only uses dvb_attach() to load the dvb driver which then uses
      symbol_get().
      
      Fix this up by properly marking all of the dvb_attach attach symbols as
      EXPORT_SYMBOL_GPL().
      
      Fixes: 9011e49d ("modules: only allow symbol_get of EXPORT_SYMBOL_GPL modules")
      Cc: stable <stable@kernel.org>
      Reported-by: default avatarStefan Lippers-Hollmann <s.l-h@gmx.de>
      Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: linux-media@vger.kernel.org
      Cc: linux-modules@vger.kernel.org
      Acked-by: default avatarLuis Chamberlain <mcgrof@kernel.org>
      Acked-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
      Link: https://lore.kernel.org/r/20230908092035.3815268-2-gregkh@linuxfoundation.orgSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      86495af1
    • Linus Torvalds's avatar
      Merge tag '6.6-rc-ksmbd' of git://git.samba.org/ksmbd · 6099776f
      Linus Torvalds authored
      Pull smb server update from Steve French:
       "After two years, many fixes and much testing, ksmbd is no longer
        experimental"
      
      * tag '6.6-rc-ksmbd' of git://git.samba.org/ksmbd:
        ksmbd: remove experimental warning
      6099776f
    • Linus Torvalds's avatar
      Merge tag 'xarray-6.6' of git://git.infradead.org/users/willy/xarray · 3095dd99
      Linus Torvalds authored
      Pull xarray fixes from Matthew Wilcox:
      
       - Fix a bug encountered by people using bittorrent where they'd get
         NULL pointer dereferences on page cache lookups when using XFS
      
       - Two documentation fixes
      
      * tag 'xarray-6.6' of git://git.infradead.org/users/willy/xarray:
        idr: fix param name in idr_alloc_cyclic() doc
        xarray: Document necessary flag in alloc functions
        XArray: Do not return sibling entries from xa_load()
      3095dd99
    • Linus Torvalds's avatar
      Merge tag 'block-6.6-2023-09-08' of git://git.kernel.dk/linux · 7402e635
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
      
       - Fix null_blk polled IO timeout handling (Chengming)
      
       - Regression fix for swapped arguments in drbd bvec_set_page()
         (Christoph)
      
       - String length handling fix for s390 dasd (Heiko)
      
       - Fixes for blk-throttle accounting (Yu)
      
       - Fix page pinning issue for same page segments (Christoph)
      
       - Remove redundant file_remove_privs() call (Christoph)
      
       - Fix a regression in partition handling for devices not supporting
         partitions (Li)
      
      * tag 'block-6.6-2023-09-08' of git://git.kernel.dk/linux:
        drbd: swap bvec_set_page len and offset
        block: fix pin count management when merging same-page segments
        null_blk: fix poll request timeout handling
        s390/dasd: fix string length handling
        block: don't add or resize partition on the disk with GENHD_FL_NO_PART
        block: remove the call to file_remove_privs in blkdev_write_iter
        blk-throttle: consider 'carryover_ios/bytes' in throtl_trim_slice()
        blk-throttle: use calculate_io/bytes_allowed() for throtl_trim_slice()
        blk-throttle: fix wrong comparation while 'carryover_ios/bytes' is negative
        blk-throttle: print signed value 'carryover_bytes/ios' for user
      7402e635
    • Linus Torvalds's avatar
      Merge tag 'io_uring-6.6-2023-09-08' of git://git.kernel.dk/linux · 7ccc3ebf
      Linus Torvalds authored
      Pull io_uring fixes from Jens Axboe:
       "A few fixes that should go into the 6.6-rc merge window:
      
         - Fix for a regression this merge window caused by the SQPOLL
           affinity patch, where we can race with SQPOLL thread shutdown and
           cause an oops when trying to set affinity (Gabriel)
      
         - Fix for a regression this merge window where fdinfo reading with
           for a ring setup with IORING_SETUP_NO_SQARRAY will attempt to
           deference the non-existing SQ ring array (me)
      
         - Add the patch that allows more finegrained control over who can use
           io_uring (Matteo)
      
         - Locking fix for a regression added this merge window for IOPOLL
           overflow (Pavel)
      
         - IOPOLL fix for stable, breaking our loop if helper threads are
           exiting (Pavel)
      
        Also had a fix for unreaped iopoll requests from io-wq from Ming, but
        we found an issue with that and hence it got reverted. Will get this
        sorted for a future rc"
      
      * tag 'io_uring-6.6-2023-09-08' of git://git.kernel.dk/linux:
        Revert "io_uring: fix IO hang in io_wq_put_and_exit from do_exit()"
        io_uring: fix unprotected iopoll overflow
        io_uring: break out of iowq iopoll on teardown
        io_uring: add a sysctl to disable io_uring system-wide
        io_uring/fdinfo: only print ->sq_array[] if it's there
        io_uring: fix IO hang in io_wq_put_and_exit from do_exit()
        io_uring: Don't set affinity on a dying sqpoll thread
      7ccc3ebf
  2. 08 Sep, 2023 23 commits
    • Linus Torvalds's avatar
      Merge tag 'thermal-6.6-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 32bf43e4
      Linus Torvalds authored
      Pull more thermal control updates from Rafael Wysocki:
       "Eliminate an obsolete thermal zone registration function"
      
      * tag 'thermal-6.6-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        thermal: core: Drop thermal_zone_device_register()
        thermal: Use thermal_tripless_zone_device_register()
        thermal: core: Add function for registering tripless thermal zones
        thermal: core: Clean up headers of thermal zone registration functions
      32bf43e4
    • Linus Torvalds's avatar
      Merge tag 'pm-6.6-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · fd88c59e
      Linus Torvalds authored
      Pull power management fix from Rafael Wysocki:
       "Fix an Intel RAPL power capping driver regression introduced during
        the 6.5 development cycle (Srinivas Pandruvada)"
      
      * tag 'pm-6.6-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        powercap: intel_rapl: Fix invalid setting of Power Limit 4
      fd88c59e
    • Linus Torvalds's avatar
      Merge tag 'gpio-fixes-for-v6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux · d30c0d32
      Linus Torvalds authored
      Pull gpio fix from Bartosz Golaszewski:
      
       - fix a regression in irqchip setup in gpio-zynq
      
      * tag 'gpio-fixes-for-v6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux:
        gpio: zynq: restore zynq_gpio_irq_reqres/zynq_gpio_irq_relres callbacks
      d30c0d32
    • Bjorn Helgaas's avatar
      Revert "PCI: Mark NVIDIA T4 GPUs to avoid bus reset" · 5260bd6d
      Bjorn Helgaas authored
      This reverts commit d5af729d.
      
      d5af729d ("PCI: Mark NVIDIA T4 GPUs to avoid bus reset") avoided
      Secondary Bus Reset on the T4 because the reset seemed to not work when the
      T4 was directly attached to a Root Port.
      
      But NVIDIA thinks the issue is probably related to some issue with the Root
      Port, not with the T4.  The T4 provides neither PM nor FLR reset, so
      masking bus reset compromises this device for assignment scenarios.
      
      Revert d5af729d as requested by Wu Zongyong.  This will leave SBR
      broken in the specific configuration Wu tested, as it was in v6.5, so Wu
      will debug that further.
      
      Link: https://lore.kernel.org/r/ZPqMCDWvITlOLHgJ@wuzongyong-alibaba
      Link: https://lore.kernel.org/r/20230908201104.GA305023@bhelgaasSigned-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      5260bd6d
    • Linus Torvalds's avatar
      Merge tag 'sound-fix-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · a3d231e4
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "A collection of fixes for 6.6-rc1. All small and easy ones.
      
         - The corrections of the previous PCM iov_iter transitions
      
         - Regression fixes in MIDI 2.0 / USB changes
      
         - Various ASoC codec fixes for Cirrus, Realtek, WCD
      
         - ASoC AMD quirks and ASoC Intel AVS driver workaround"
      
      * tag 'sound-fix-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (21 commits)
        ALSA: hda/realtek - ALC287 I2S speaker platform support
        ASoC: amd: yc: Fix a non-functional mic on Lenovo 82TL
        ASoC: Intel: avs: Provide support for fallback topology
        ALSA: seq: Fix snd_seq_expand_var_event() call to user-space
        ALSA: usb-audio: Fix potential memory leaks at error path for UMP open
        ALSA: hda/cirrus: Fix broken audio on hardware with two CS42L42 codecs.
        ASoC: rt5645: NULL pointer access when removing jack
        ASoC: amd: yc: Add DMI entries to support Victus by HP Gaming Laptop 15-fb0xxx (8A3E)
        MAINTAINERS: Update the MAINTAINERS enties for TEXAS INSTRUMENTS ASoC DRIVERS
        ALSA: sb: Fix wrong argument in commented code
        ALSA: pcm: Fix error checks of default read/write copy ops
        ASoC: Name iov_iter argument as iterator instead of buffer
        ASoC: dmaengine: Drop unused iov_iter for process callback
        ALSA: hda/tas2781: Use standard clamp() macro
        ASoC: cs35l56: Waiting for firmware to boot must be tolerant of I/O errors
        ASoC: dt-bindings: fsl_easrc: Add support for imx8mp-easrc
        ASoC: cs42l43: Fix missing error code in cs42l43_codec_probe()
        ASoC: cs35l45: Rename DACPCM1 Source control
        ASoC: cs35l45: Fix "Dead assigment" warning
        ASoC: cs35l45: Add support for Chip ID 0x35A460
        ...
      a3d231e4
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · ca9c7abf
      Linus Torvalds authored
      Pull arm64 fixes from Will Deacon:
       "The main one is a fix for a broken strscpy() conversion that landed in
        the merge window and broke early parsing of the kernel command line.
      
         - Fix an incorrect mask in the CXL PMU driver
      
         - Fix a regression in early parsing of the kernel command line
      
         - Fix an IP checksum OoB access reported by syzbot"
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: csum: Fix OoB access in IP checksum code for negative lengths
        arm64/sysreg: Fix broken strncpy() -> strscpy() conversion
        perf: CXL: fix mismatched number of counters mask
      ca9c7abf
    • Linus Torvalds's avatar
      Merge tag 'loongarch-6.6' of... · 12952b6b
      Linus Torvalds authored
      Merge tag 'loongarch-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
      
      Pull LoongArch updates from Huacai Chen:
      
       - Allow usage of LSX/LASX in the kernel, and use them for
         SIMD-optimized RAID5/RAID6 routines
      
       - Add Loongson Binary Translation (LBT) extension support
      
       - Add basic KGDB & KDB support
      
       - Add building with kcov coverage
      
       - Add KFENCE (Kernel Electric-Fence) support
      
       - Add KASAN (Kernel Address Sanitizer) support
      
       - Some bug fixes and other small changes
      
       - Update the default config file
      
      * tag 'loongarch-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson: (25 commits)
        LoongArch: Update Loongson-3 default config file
        LoongArch: Add KASAN (Kernel Address Sanitizer) support
        LoongArch: Simplify the processing of jumping new kernel for KASLR
        kasan: Add (pmd|pud)_init for LoongArch zero_(pud|p4d)_populate process
        kasan: Add __HAVE_ARCH_SHADOW_MAP to support arch specific mapping
        LoongArch: Add KFENCE (Kernel Electric-Fence) support
        LoongArch: Get partial stack information when providing regs parameter
        LoongArch: mm: Add page table mapped mode support for virt_to_page()
        kfence: Defer the assignment of the local variable addr
        LoongArch: Allow building with kcov coverage
        LoongArch: Provide kaslr_offset() to get kernel offset
        LoongArch: Add basic KGDB & KDB support
        LoongArch: Add Loongson Binary Translation (LBT) extension support
        raid6: Add LoongArch SIMD recovery implementation
        raid6: Add LoongArch SIMD syndrome calculation
        LoongArch: Add SIMD-optimized XOR routines
        LoongArch: Allow usage of LSX/LASX in the kernel
        LoongArch: Define symbol 'fault' as a local label in fpu.S
        LoongArch: Adjust {copy, clear}_user exception handler behavior
        LoongArch: Use static defined zero page rather than allocated
        ...
      12952b6b
    • Linus Torvalds's avatar
      Merge tag 'printk-for-6.6-fixup' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux · 01a46efc
      Linus Torvalds authored
      Pull printk fix from Petr Mladek:
      
       - Revert exporting symbols needed for dumping the raw printk buffer in
         panic().
      
         I pushed the export prematurely before the user was ready for merging
         into the mainline.
      
      * tag 'printk-for-6.6-fixup' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux:
        Revert "printk: export symbols for debug modules"
      01a46efc
    • Linus Torvalds's avatar
      Merge tag 'landlock-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mic/linux · d0a45eeb
      Linus Torvalds authored
      Pull landlock updates from Mickaël Salaün:
       "One test fix and a __counted_by annotation"
      
      * tag 'landlock-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mic/linux:
        selftests/landlock: Fix a resource leak
        landlock: Annotate struct landlock_rule with __counted_by
      d0a45eeb
    • Lad Prabhakar's avatar
      soc: renesas: Kconfig: For ARCH_R9A07G043 select the required configs if dependencies are met · c6a906cc
      Lad Prabhakar authored
      To prevent randconfig build issues when enabling the RZ/Five SoC, consider
      selecting specific configurations only when their dependencies are
      satisfied.
      Reported-by: default avatarkernel test robot <lkp@intel.com>
      Closes: https://lore.kernel.org/oe-kbuild-all/202308311610.ec6bm2G8-lkp@intel.com/Signed-off-by: default avatarLad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
      Fixes: 484861e0 ("soc: renesas: Kconfig: Select the required configs for RZ/Five SoC")
      Reviewed-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
      Acked-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
      Link: https://lore.kernel.org/r/20230901110936.313171-1-prabhakar.mahadev-lad.rj@bp.renesas.comSigned-off-by: default avatarPalmer Dabbelt <palmer@rivosinc.com>
      c6a906cc
    • Lad Prabhakar's avatar
      riscv: Kconfig.errata: Add dependency for RISCV_SBI in ERRATA_ANDES config · 2f73b35d
      Lad Prabhakar authored
      Andes errata uses sbi_ecalll() which is only available if RISCV_SBI is
      enabled. So add an dependency for RISCV_SBI in ERRATA_ANDES config to
      avoid any build failures.
      Reported-by: default avatarkernel test robot <lkp@intel.com>
      Closes: https://lore.kernel.org/oe-kbuild-all/202308311610.ec6bm2G8-lkp@intel.com/Signed-off-by: default avatarLad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
      Reviewed-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
      Tested-by: default avatarRandy Dunlap <rdunlap@infradead.org>
      Link: https://lore.kernel.org/r/20230901110320.312674-1-prabhakar.mahadev-lad.rj@bp.renesas.comSigned-off-by: default avatarPalmer Dabbelt <palmer@rivosinc.com>
      2f73b35d
    • Lad Prabhakar's avatar
      riscv: Kconfig.errata: Drop dependency for MMU in ERRATA_ANDES_CMO config · 54adc24c
      Lad Prabhakar authored
      Now that RISCV_DMA_NONCOHERENT conditionally selects DMA_DIRECT_REMAP
      ie only if MMU is enabled, we no longer need the MMU dependency in
      ERRATA_ANDES_CMO config.
      Signed-off-by: default avatarLad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
      Reviewed-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
      Link: https://lore.kernel.org/r/20230901105858.311745-1-prabhakar.mahadev-lad.rj@bp.renesas.comSigned-off-by: default avatarPalmer Dabbelt <palmer@rivosinc.com>
      54adc24c
    • Lad Prabhakar's avatar
      riscv: Kconfig: Select DMA_DIRECT_REMAP only if MMU is enabled · e7ddd00e
      Lad Prabhakar authored
      kernel/dma/mapping.c has its use of pgprot_dmacoherent() inside
      an #ifdef CONFIG_MMU block. kernel/dma/pool.c has its use of
      pgprot_dmacoherent() inside an #ifdef CONFIG_DMA_DIRECT_REMAP block.
      So select DMA_DIRECT_REMAP only if MMU is enabled for RISCV_DMA_NONCOHERENT
      config.
      
      This avoids users to explicitly select MMU.
      Suggested-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
      Signed-off-by: default avatarLad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
      Link: https://lore.kernel.org/r/20230901105111.311200-1-prabhakar.mahadev-lad.rj@bp.renesas.comSigned-off-by: default avatarPalmer Dabbelt <palmer@rivosinc.com>
      e7ddd00e
    • Palmer Dabbelt's avatar
      Merge patch series "bpf, riscv: use BPF prog pack allocator in BPF JIT" · 77eea559
      Palmer Dabbelt authored
      Puranjay Mohan <puranjay12@gmail.com> says:
      
      Here is some data to prove the V2 fixes the problem:
      
      Without this series:
      root@rv-selftester:~/src/kselftest/bpf# time ./test_tag
      test_tag: OK (40945 tests)
      
      real    7m47.562s
      user    0m24.145s
      sys     6m37.064s
      
      With this series applied:
      root@rv-selftester:~/src/selftest/bpf# time ./test_tag
      test_tag: OK (40945 tests)
      
      real    7m29.472s
      user    0m25.865s
      sys     6m18.401s
      
      BPF programs currently consume a page each on RISCV. For systems with many BPF
      programs, this adds significant pressure to instruction TLB. High iTLB pressure
      usually causes slow down for the whole system.
      
      Song Liu introduced the BPF prog pack allocator[1] to mitigate the above issue.
      It packs multiple BPF programs into a single huge page. It is currently only
      enabled for the x86_64 BPF JIT.
      
      I enabled this allocator on the ARM64 BPF JIT[2]. It is being reviewed now.
      
      This patch series enables the BPF prog pack allocator for the RISCV BPF JIT.
      
      ======================================================
      Performance Analysis of prog pack allocator on RISCV64
      ======================================================
      
      Test setup:
      ===========
      
      Host machine: Debian GNU/Linux 11 (bullseye)
      Qemu Version: QEMU emulator version 8.0.3 (Debian 1:8.0.3+dfsg-1)
      u-boot-qemu Version: 2023.07+dfsg-1
      opensbi Version: 1.3-1
      
      To test the performance of the BPF prog pack allocator on RV, a stresser
      tool[4] linked below was built. This tool loads 8 BPF programs on the system and
      triggers 5 of them in an infinite loop by doing system calls.
      
      The runner script starts 20 instances of the above which loads 8*20=160 BPF
      programs on the system, 5*20=100 of which are being constantly triggered.
      The script is passed a command which would be run in the above environment.
      
      The script was run with following perf command:
      ./run.sh "perf stat -a \
              -e iTLB-load-misses \
              -e dTLB-load-misses  \
              -e dTLB-store-misses \
              -e instructions \
              --timeout 60000"
      
      The output of the above command is discussed below before and after enabling the
      BPF prog pack allocator.
      
      The tests were run on qemu-system-riscv64 with 8 cpus, 16G memory. The rootfs
      was created using Bjorn's riscv-cross-builder[5] docker container linked below.
      
      Results
      =======
      
      Before enabling prog pack allocator:
      ------------------------------------
      
      Performance counter stats for 'system wide':
      
                 4939048      iTLB-load-misses
                 5468689      dTLB-load-misses
                  465234      dTLB-store-misses
           1441082097998      instructions
      
            60.045791200 seconds time elapsed
      
      After enabling prog pack allocator:
      -----------------------------------
      
      Performance counter stats for 'system wide':
      
                 3430035      iTLB-load-misses
                 5008745      dTLB-load-misses
                  409944      dTLB-store-misses
           1441535637988      instructions
      
            60.046296600 seconds time elapsed
      
      Improvements in metrics
      =======================
      
      It was expected that the iTLB-load-misses would decrease as now a single huge
      page is used to keep all the BPF programs compared to a single page for each
      program earlier.
      
      --------------------------------------------
      The improvement in iTLB-load-misses: -30.5 %
      --------------------------------------------
      
      I repeated this expriment more than 100 times in different setups and the
      improvement was always greater than 30%.
      
      This patch series is boot tested on the Starfive VisionFive 2 board[6].
      The performance analysis was not done on the board because it doesn't
      expose iTLB-load-misses, etc. The stresser program was run on the board to test
      the loading and unloading of BPF programs
      
      [1] https://lore.kernel.org/bpf/20220204185742.271030-1-song@kernel.org/
      [2] https://lore.kernel.org/all/20230626085811.3192402-1-puranjay12@gmail.com/
      [3] https://lore.kernel.org/all/20230626085811.3192402-2-puranjay12@gmail.com/
      [4] https://github.com/puranjaymohan/BPF-Allocator-Bench
      [5] https://github.com/bjoto/riscv-cross-builder
      [6] https://www.starfivetech.com/en/site/boards
      
      * b4-shazam-merge:
        bpf, riscv: use prog pack allocator in the BPF JIT
        riscv: implement a memset like function for text
        riscv: extend patch_text_nosync() for multiple pages
        bpf: make bpf_prog_pack allocator portable
      
      Link: https://lore.kernel.org/r/20230831131229.497941-1-puranjay12@gmail.comSigned-off-by: default avatarPalmer Dabbelt <palmer@rivosinc.com>
      77eea559
    • Palmer Dabbelt's avatar
      Merge patch series "riscv: Introduce KASLR" · f5780555
      Palmer Dabbelt authored
      Alexandre Ghiti <alexghiti@rivosinc.com> says:
      
      The following KASLR implementation allows to randomize the kernel mapping:
      
      - virtually: we expect the bootloader to provide a seed in the device-tree
      - physically: only implemented in the EFI stub, it relies on the firmware to
        provide a seed using EFI_RNG_PROTOCOL. arm64 has a similar implementation
        hence the patch 3 factorizes KASLR related functions for riscv to take
        advantage.
      
      The new virtual kernel location is limited by the early page table that only
      has one PUD and with the PMD alignment constraint, the kernel can only take
      < 512 positions.
      
      * b4-shazam-merge:
        riscv: libstub: Implement KASLR by using generic functions
        libstub: Fix compilation warning for rv32
        arm64: libstub: Move KASLR handling functions to kaslr.c
        riscv: Dump out kernel offset information on panic
        riscv: Introduce virtual kernel mapping KASLR
      
      Link: https://lore.kernel.org/r/20230722123850.634544-1-alexghiti@rivosinc.comSigned-off-by: default avatarPalmer Dabbelt <palmer@rivosinc.com>
      f5780555
    • Palmer Dabbelt's avatar
      Merge patch "RISC-V: Add ptrace support for vectors" · f0936363
      Palmer Dabbelt authored
      This resurrects the vector ptrace() support that was removed for 6.5 due
      to some bugs cropping up as part of the GDB review process.
      
      * b4-shazam-merge:
        RISC-V: Add ptrace support for vectors
      
      Link: https://lore.kernel.org/r/20230825050248.32681-1-andy.chiu@sifive.comSigned-off-by: default avatarPalmer Dabbelt <palmer@rivosinc.com>
      f0936363
    • Palmer Dabbelt's avatar
      Merge patch series "Add non-coherent DMA support for AX45MP" · c23be918
      Palmer Dabbelt authored
      Prabhakar <prabhakar.csengg@gmail.com> says:
      
      From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
      
      non-coherent DMA support for AX45MP
      ====================================
      
      On the Andes AX45MP core, cache coherency is a specification option so it
      may not be supported. In this case DMA will fail. To get around with this
      issue this patch series does the below:
      
      1] Andes alternative ports is implemented as errata which checks if the
      IOCP is missing and only then applies to CMO errata. One vendor specific
      SBI EXT (ANDES_SBI_EXT_IOCP_SW_WORKAROUND) is implemented as part of
      errata.
      
      Below are the configs which Andes port provides (and are selected by
      RZ/Five):
            - ERRATA_ANDES
            - ERRATA_ANDES_CMO
      
      OpenSBI patch supporting ANDES_SBI_EXT_IOCP_SW_WORKAROUND SBI is now
      part v1.3 release.
      
      2] Andes AX45MP core has a Programmable Physical Memory Attributes (PMA)
      block that allows dynamic adjustment of memory attributes in the runtime.
      It contains a configurable amount of PMA entries implemented as CSR
      registers to control the attributes of memory locations in interest.
      OpenSBI configures the PMA regions as required and creates a reserve memory
      node and propagates it to the higher boot stack.
      
      Currently OpenSBI (upstream) configures the required PMA region and passes
      this a shared DMA pool to Linux.
      
          reserved-memory {
              #address-cells = <2>;
              #size-cells = <2>;
              ranges;
      
              pma_resv0@58000000 {
                  compatible = "shared-dma-pool";
                  reg = <0x0 0x58000000 0x0 0x08000000>;
                  no-map;
                  linux,dma-default;
              };
          };
      
      The above shared DMA pool gets appended to Linux DTB so the DMA memory
      requests go through this region.
      
      3] We provide callbacks to synchronize specific content between memory and
      cache.
      
      4] RZ/Five SoC selects the below configs
              - AX45MP_L2_CACHE
              - DMA_GLOBAL_POOL
              - ERRATA_ANDES
              - ERRATA_ANDES_CMO
      
      ----------x---------------------x--------------------x---------------x----
      
      * b4-shazam-merge:
        soc: renesas: Kconfig: Select the required configs for RZ/Five SoC
        cache: Add L2 cache management for Andes AX45MP RISC-V core
        dt-bindings: cache: andestech,ax45mp-cache: Add DT binding documentation for L2 cache controller
        riscv: mm: dma-noncoherent: nonstandard cache operations support
        riscv: errata: Add Andes alternative ports
        riscv: asm: vendorid_list: Add Andes Technology to the vendors list
      
      Link: https://lore.kernel.org/r/20230818135723.80612-1-prabhakar.mahadev-lad.rj@bp.renesas.comSigned-off-by: default avatarPalmer Dabbelt <palmer@rivosinc.com>
      c23be918
    • Palmer Dabbelt's avatar
      Merge patch series "riscv: dma-mapping: unify support for cache flushes" · 7f215d00
      Palmer Dabbelt authored
      Prabhakar <prabhakar.csengg@gmail.com> says:
      
      From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
      
      This patch series is a subset from Arnd's original series [0]. Ive just
      picked up the bits required for RISC-V unification of cache flushing.
      Remaining patches from the series [0] will be taken care by Arnd soon.
      
      * b4-shazam-merge:
        riscv: dma-mapping: switch over to generic implementation
        riscv: dma-mapping: skip invalidation before bidirectional DMA
        riscv: dma-mapping: only invalidate after DMA, not flush
      
      Link: https://lore.kernel.org/r/20230816232336.164413-1-prabhakar.mahadev-lad.rj@bp.renesas.comSigned-off-by: default avatarPalmer Dabbelt <palmer@rivosinc.com>
      7f215d00
    • Palmer Dabbelt's avatar
      Merge patch series "RISC-V: Probe for misaligned access speed" · 580253b5
      Palmer Dabbelt authored
      Evan Green <evan@rivosinc.com> says:
      
      The current setting for the hwprobe bit indicating misaligned access
      speed is controlled by a vendor-specific feature probe function. This is
      essentially a per-SoC table we have to maintain on behalf of each vendor
      going forward. Let's convert that instead to something we detect at
      runtime.
      
      We have two assembly routines at the heart of our probe: one that
      does a bunch of word-sized accesses (without aligning its input buffer),
      and the other that does byte accesses. If we can move a larger number of
      bytes using misaligned word accesses than we can with the same amount of
      time doing byte accesses, then we can declare misaligned accesses as
      "fast".
      
      The tradeoff of reducing this maintenance burden is boot time. We spend
      4-6 jiffies per core doing this measurement (0-2 on jiffie edge
      alignment, and 4 on measurement). The timing loop was based on
      raid6_choose_gen(), which uses (16+1)*N jiffies (where N is the number
      of algorithms). By taking only the fastest iteration out of all
      attempts for use in the comparison, variance between runs is very low.
      On my THead C906, it looks like this:
      
      [    0.047563] cpu0: Ratio of byte access time to unaligned word access is 4.34, unaligned accesses are fast
      
      Several others have chimed in with results on slow machines with the
      older algorithm, which took all runs into account, including noise like
      interrupts. Even with this variation, results indicate that in all cases
      (fast, slow, and emulated) the measured numbers are nowhere near each
      other (always multiple factors away).
      
      * b4-shazam-merge:
        RISC-V: alternative: Remove feature_probe_func
        RISC-V: Probe for unaligned access speed
      
      Link: https://lore.kernel.org/r/20230818194136.4084400-1-evan@rivosinc.comSigned-off-by: default avatarPalmer Dabbelt <palmer@rivosinc.com>
      580253b5
    • Zhenhua Huang's avatar
      Revert "dma-contiguous: check for memory region overlap" · f875db4f
      Zhenhua Huang authored
      This reverts commit 3fa6456e.
      
      The Commit broke the CMA region creation through DT on arm64,
      as showed below logs with "memblock=debug":
      [    0.000000] memblock_phys_alloc_range: 41943040 bytes align=0x200000
      from=0x0000000000000000 max_addr=0x00000000ffffffff
      early_init_dt_alloc_reserved_memory_arch+0x34/0xa0
      [    0.000000] memblock_reserve: [0x00000000fd600000-0x00000000ffdfffff]
      memblock_alloc_range_nid+0xc0/0x19c
      [    0.000000] Reserved memory: overlap with other memblock reserved region
      
      >From call flow, region we defined in DT was always reserved before entering
      into rmem_cma_setup. Also, rmem_cma_setup has one routine cma_init_reserved_mem
      to ensure the region was reserved. Checking the region not reserved here seems
      not correct.
      
      early_init_fdt_scan_reserved_mem:
          fdt_scan_reserved_mem
              __reserved_mem_reserve_reg
      		early_init_dt_reserve_memory
      			memblock_reserve(using “reg” prop case)
              fdt_init_reserved_mem
      		__reserved_mem_alloc_size
      			*early_init_dt_alloc_reserved_memory_arch*
      				memblock_reserve(dynamic alloc case)
              __reserved_mem_init_node
      		rmem_cma_setup(region overlap check here should always fail)
      
      Example DT can be used to reproduce issue:
      
          dump_mem: mem_dump_region {
                  compatible = "shared-dma-pool";
                  alloc-ranges = <0x0 0x00000000 0x0 0xffffffff>;
                  reusable;
                  size = <0 0x2800000>;
          };
      Signed-off-by: default avatarZhenhua Huang <quic_zhenhuah@quicinc.com>
      f875db4f
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2023-09-08' of git://anongit.freedesktop.org/drm/drm · a48fa7ef
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Regular rounds of rc1 fixes, a large bunch for amdgpu since it's three
        weeks in one go, one i915, one nouveau and one ivpu.
      
        I think there might be a few more fixes in misc that I haven't pulled
        in yet, but we should get them all for rc2.
      
        amdgpu:
         - Display replay fixes
         - Fixes for headless boards
         - Fix documentation breakage
         - RAS fixes
         - Handle newer IP discovery tables
         - SMU 13.0.6 fixes
         - SR-IOV fixes
         - Display vstartup fixes
         - NBIO 7.9 fixes
         - Display scaling mode fixes
         - Debugfs power reporting fix
         - GC 9.4.3 fixes
         - Dirty framebuffer fixes for fbcon
         - eDP fixes
         - DCN 3.1.5 fix
         - Display ODM fixes
         - GPU core dump fix
         - Re-enable zops property now that IGT test is fixed
         - Fix possible UAF in CS code
         - Cursor degamma fix
      
        amdkfd:
         - HMM fixes
         - Interrupt masking fix
         - GFX11 MQD fixes
      
        i915:
         - Mark requests for GuC virtual engines to avoid use-after-free
      
        nouveau:
         - Fix fence state in nouveau_fence_emit()
      
        ivpu:
         - replace strncpy"
      
      * tag 'drm-next-2023-09-08' of git://anongit.freedesktop.org/drm/drm: (51 commits)
        drm/amdgpu: Restrict bootloader wait to SMUv13.0.6
        drm/amd/display: prevent potential division by zero errors
        drm/amd/display: enable cursor degamma for DCN3+ DRM legacy gamma
        drm/amd/display: limit the v_startup workaround to ASICs older than DCN3.1
        Revert "drm/amd/display: Remove v_startup workaround for dcn3+"
        drm/amdgpu: fix amdgpu_cs_p1_user_fence
        Revert "Revert "drm/amd/display: Implement zpos property""
        drm/amdkfd: Add missing gfx11 MQD manager callbacks
        drm/amdgpu: Free ras cmd input buffer properly
        drm/amdgpu: Hide xcp partition sysfs under SRIOV
        drm/amdgpu: use read-modify-write mode for gfx v9_4_3 SQ setting
        drm/amdkfd: use mask to get v9 interrupt sq data bits correctly
        drm/amdgpu: Allocate coredump memory in a nonblocking way
        drm/amdgpu: Support query ecc cap for aqua_vanjaram
        drm/amdgpu: Add umc_info v4_0 structure
        drm/amd/display: always switch off ODM before committing more streams
        drm/amd/display: Remove wait while locked
        drm/amd/display: update blank state on ODM changes
        drm/amd/display: Add smu write msg id fail retry process
        drm/amdgpu: Add SMU v13.0.6 default reset methods
        ...
      a48fa7ef
    • Linus Torvalds's avatar
      Merge tag 'net-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · 73be7fb1
      Linus Torvalds authored
      Pull networking updates from Jakub Kicinski:
       "Including fixes from netfilter and bpf.
      
        Current release - regressions:
      
         - eth: stmmac: fix failure to probe without MAC interface specified
      
        Current release - new code bugs:
      
         - docs: netlink: fix missing classic_netlink doc reference
      
        Previous releases - regressions:
      
         - deal with integer overflows in kmalloc_reserve()
      
         - use sk_forward_alloc_get() in sk_get_meminfo()
      
         - bpf_sk_storage: fix the missing uncharge in sk_omem_alloc
      
         - fib: avoid warn splat in flow dissector after packet mangling
      
         - skb_segment: call zero copy functions before using skbuff frags
      
         - eth: sfc: check for zero length in EF10 RX prefix
      
        Previous releases - always broken:
      
         - af_unix: fix msg_controllen test in scm_pidfd_recv() for
           MSG_CMSG_COMPAT
      
         - xsk: fix xsk_build_skb() dereferencing possible ERR_PTR()
      
         - netfilter:
            - nft_exthdr: fix non-linear header modification
            - xt_u32, xt_sctp: validate user space input
            - nftables: exthdr: fix 4-byte stack OOB write
            - nfnetlink_osf: avoid OOB read
            - one more fix for the garbage collection work from last release
      
         - igmp: limit igmpv3_newpack() packet size to IP_MAX_MTU
      
         - bpf, sockmap: fix preempt_rt splat when using raw_spin_lock_t
      
         - handshake: fix null-deref in handshake_nl_done_doit()
      
         - ip: ignore dst hint for multipath routes to ensure packets are
           hashed across the nexthops
      
         - phy: micrel:
            - correct bit assignments for cable test errata
            - disable EEE according to the KSZ9477 errata
      
        Misc:
      
         - docs/bpf: document compile-once-run-everywhere (CO-RE) relocations
      
         - Revert "net: macsec: preserve ingress frame ordering", it appears
           to have been developed against an older kernel, problem doesn't
           exist upstream"
      
      * tag 'net-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (95 commits)
        net: enetc: distinguish error from valid pointers in enetc_fixup_clear_rss_rfs()
        Revert "net: team: do not use dynamic lockdep key"
        net: hns3: remove GSO partial feature bit
        net: hns3: fix the port information display when sfp is absent
        net: hns3: fix invalid mutex between tc qdisc and dcb ets command issue
        net: hns3: fix debugfs concurrency issue between kfree buffer and read
        net: hns3: fix byte order conversion issue in hclge_dbg_fd_tcam_read()
        net: hns3: Support query tx timeout threshold by debugfs
        net: hns3: fix tx timeout issue
        net: phy: Provide Module 4 KSZ9477 errata (DS80000754C)
        netfilter: nf_tables: Unbreak audit log reset
        netfilter: ipset: add the missing IP_SET_HASH_WITH_NET0 macro for ip_set_hash_netportnet.c
        netfilter: nft_set_rbtree: skip sync GC for new elements in this transaction
        netfilter: nf_tables: uapi: Describe NFTA_RULE_CHAIN_ID
        netfilter: nfnetlink_osf: avoid OOB read
        netfilter: nftables: exthdr: fix 4-byte stack OOB write
        selftests/bpf: Check bpf_sk_storage has uncharged sk_omem_alloc
        bpf: bpf_sk_storage: Fix the missing uncharge in sk_omem_alloc
        bpf: bpf_sk_storage: Fix invalid wait context lockdep report
        s390/bpf: Pass through tail call counter in trampolines
        ...
      73be7fb1
    • Linus Torvalds's avatar
      Merge tag 'devicetree-fixes-for-6.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · 2ab35ce2
      Linus Torvalds authored
      Pull more devicetree updates from Rob Herring:
       "A couple of conversions which didn't get picked up by the subsystems
        and one fix:
      
         - Convert st,stih407-irq-syscfg and Omnivision OV7251 bindings to DT
           schema
      
         - Merge Omnivision OV5695 into OV5693 binding
      
         - Fix of_overlay_fdt_apply prototype when !CONFIG_OF_OVERLAY"
      
      * tag 'devicetree-fixes-for-6.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
        dt-bindings: irqchip: convert st,stih407-irq-syscfg to DT schema
        media: dt-bindings: Convert Omnivision OV7251 to DT schema
        media: dt-bindings: Merge OV5695 into OV5693 binding
        of: overlay: Fix of_overlay_fdt_apply prototype when !CONFIG_OF_OVERLAY
      2ab35ce2