Skip to content
  1. Feb 24, 2024
    • Linus Torvalds's avatar
      Merge tag 'parisc-for-6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · 603c04e2
      Linus Torvalds authored
      Pull parisc architecture fixes from Helge Deller:
       "Fixes CPU hotplug, the parisc stack unwinder and two possible build
        errors in kprobes and ftrace area:
      
         - Fix CPU hotplug
      
         - Fix unaligned accesses and faults in stack unwinder
      
         - Fix potential build errors by always including asm-generic/kprobes.h
      
         - Fix build bug by add missing CONFIG_DYNAMIC_FTRACE check"
      
      * tag 'parisc-for-6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: Fix stack unwinder
        parisc/kprobes: always include asm-generic/kprobes.h
        parisc/ftrace: add missing CONFIG_DYNAMIC_FTRACE check
        Revert "parisc: Only list existing CPUs in cpu_possible_mask"
      603c04e2
    • Linus Torvalds's avatar
      Merge tag 'arm-fixes-6.8-2' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · e44baca7
      Linus Torvalds authored
      Pull arm and RISC-V SoC fixes from Arnd Bergmann:
       "The Rockchip and IMX8 platforms get a number of fixes for dts files in
        order to address some misconfigurations, including a regression for
        USB-C support on some boards.
      
        The other dts fixes are part of a series by Rob Herring to clean up
        another class of dtc compiler warnings across all platforms, with a
        few others helping out as well. With this, we can enable the warning
        for the coming merge window without introducing regressions.
      
        Conor Dooley has collected fixes for RISC-V platforms, both for the
        dts files and for platofrm specific drivers.
      
        The ep93xx platform gets a regression for for its gpio descriptors"
      
      * tag 'arm-fixes-6.8-2' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (28 commits)
        ARM: dts: renesas: rcar-gen2: Add missing #interrupt-cells to DA9063 nodes
        cache: ax45mp_cache: Align end size to cache boundary in ax45mp_dma_cache_wback()
        arm64: dts: qcom: Fix interrupt-map cell sizes
        arm: dts: Fix dtc interrupt_map warnings
        arm64: dts: Fix dtc interrupt_provider warnings
        arm: dts: Fix dtc interrupt_provider warnings
        arm64: dts: freescale: Disable interrupt_map check
        ARM: ep93xx: Add terminator to gpiod_lookup_table
        riscv: dts: sifive: add missing #interrupt-cells to pmic
        arm64: dts: rockchip: Correct Indiedroid Nova GPIO Names
        arm64: dts: rockchip: Drop interrupts property from rk3328 pwm-rockchip node
        arm64: dts: rockchip: set num-cs property for spi on px30
        arm64: dts: rockchip: minor rk3588 whitespace cleanup
        riscv: dts: starfive: replace underscores in node names
        bus: imx-weim: fix valid range check
        Revert "arm64: dts: imx8mn-var-som-symphony: Describe the USB-C connector"
        Revert "arm64: dts: imx8mp-dhcom-pdk3: Describe the USB-C connector"
        arm64: dts: tqma8mpql: fix audio codec iov-supply
        arm64: dts: rockchip: drop unneeded status from rk3588-jaguar gpio-leds
        ARM: dts: rockchip: Drop interrupts property from pwm-rockchip nodes
        ...
      e44baca7
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 86f01602
      Linus Torvalds authored
      Pull arm64 fixes from Will Deacon:
       "A simple fix to a definition in the CXL PMU driver, a couple of
        patches to restore SME control registers on the resume path (since
        Arm's fast model now clears them) and a revert for our jump label asm
        constraints after Geert noticed they broke the build with GCC 5.5.
      
        There was then the ensuing discussion about raising the minimum GCC
        (and corresponding binutils) versions at [1], but for now we'll keep
        things working as they were until that goes ahead.
      
         - Revert fix to jump label asm constraints, as it regresses the build
           with some GCC 5.5 toolchains.
      
         - Restore SME control registers when resuming from suspend
      
         - Fix incorrect filter definition in CXL PMU driver"
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64/sme: Restore SMCR_EL1.EZT0 on exit from suspend
        arm64/sme: Restore SME registers on exit from suspend
        Revert "arm64: jump_label: use constraints "Si" instead of "i""
        perf: CXL: fix CPMU filter value mask length
      86f01602
    • Linus Torvalds's avatar
      Merge tag 's390-6.8-3' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 5efa18e8
      Linus Torvalds authored
      Pull s390 fixes from Heiko Carstens:
      
       - Fix invalid -EBUSY on ccw_device_start() which can lead to failing
         device initialization
      
       - Add missing multiplication by 8 in __iowrite64_copy() to get the
         correct byte length before calling zpci_memcpy_toio()
      
       - Various config updates
      
      * tag 's390-6.8-3' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/cio: fix invalid -EBUSY on ccw_device_start
        s390: use the correct count for __iowrite64_copy()
        s390/configs: update default configurations
        s390/configs: enable INIT_STACK_ALL_ZERO in all configurations
        s390/configs: provide compat topic configuration target
      5efa18e8
    • Linus Torvalds's avatar
      Merge tag 'mm-hotfixes-stable-2024-02-22-15-02' of... · 95e73fb1
      Linus Torvalds authored
      Merge tag 'mm-hotfixes-stable-2024-02-22-15-02' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
      
      Pull misc fixes from Andrew Morton:
       "A batch of MM (and one non-MM) hotfixes.
      
        Ten are cc:stable and the remainder address post-6.7 issues or aren't
        considered appropriate for backporting"
      
      * tag 'mm-hotfixes-stable-2024-02-22-15-02' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm:
        kasan: guard release_free_meta() shadow access with kasan_arch_is_ready()
        mm/damon/lru_sort: fix quota status loss due to online tunings
        mm/damon/reclaim: fix quota stauts loss due to online tunings
        MAINTAINERS: mailmap: update Shakeel's email address
        mm/damon/sysfs-schemes: handle schemes sysfs dir removal before commit_schemes_quota_goals
        mm: memcontrol: clarify swapaccount=0 deprecation warning
        mm/memblock: add MEMBLOCK_RSRV_NOINIT into flagname[] array
        mm/zswap: invalidate duplicate entry when !zswap_enabled
        lib/Kconfig.debug: TEST_IOV_ITER depends on MMU
        mm/swap: fix race when skipping swapcache
        mm/swap_state: update zswap LRU's protection range with the folio locked
        selftests/mm: uffd-unit-test check if huge page size is 0
        mm/damon/core: check apply interval in damon_do_apply_schemes()
        mm: zswap: fix missing folio cleanup in writeback race path
      95e73fb1
    • Linus Torvalds's avatar
      Merge tag 'for-6.8/dm-fixes-2' of... · e7768e65
      Linus Torvalds authored
      Merge tag 'for-6.8/dm-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
      
      Pull device mapper fixes from Mike Snitzer:
      
       - Stable fixes for 3 DM targets (integrity, verity and crypt) to
         address systemic failure that can occur if user provided pages map to
         the same block.
      
       - Fix DM crypt to not allow modifying data that being encrypted for
         authenticated encryption.
      
       - Fix DM crypt and verity targets to align their respective bvec_iter
         struct members to avoid the need for byte level access (due to
         __packed attribute) that is costly on some arches (like RISC).
      
      * tag 'for-6.8/dm-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        dm-crypt, dm-integrity, dm-verity: bump target version
        dm-verity, dm-crypt: align "struct bvec_iter" correctly
        dm-crypt: recheck the integrity tag after a failure
        dm-crypt: don't modify the data when using authenticated encryption
        dm-verity: recheck the hash after a failure
        dm-integrity: recheck the integrity tag after a failure
      e7768e65
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2024-02-23' of git://anongit.freedesktop.org/drm/drm · 06b7ef70
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "This is the weekly drm fixes. Non-drivers there is a fbdev/sparc fix,
        syncobj, ttm and buddy fixes.
      
        On the driver side, ivpu, meson, i915 have a small fix each. Then
        amdgpu and xe have a bunch. Nouveau has some minor uapi additions to
        give userspace some useful info along with a Kconfig change to allow
        the new GSP firmware paths to be used by default on the GPUs it
        supports.
      
        Seems about the usual amount for this time of release cycle.
      
        fbdev:
         - fix sparc undefined reference
      
        syncobj:
         - fix sync obj fence waiting
         - handle NULL fence in syncobj eventfd code
      
        ttm:
         - fix invalid free
      
        buddy:
         - fix list handling
         - fix 32-bit build
      
        meson:
         - don't remove bridges from other drivers
      
        nouveau:
         - fix build warnings
         - add two minor info parameters
         - add a Kconfig to allow GSP by default on some GPUs
      
        ivpu:
         - allow fw to do initial tile config
      
        i915:
         - fix TV mode
      
        amdgpu:
         - Suspend/resume fixes
         - Backlight error fix
         - DCN 3.5 fixes
         - Misc fixes
      
        xe:
         - Remove support for persistent exec_queues
         - Drop a reduntant sysfs newline printout
         - A three-patch fix for a VM_BIND rebind optimization path
         - Fix a modpost warning on an xe KUNIT module"
      
      * tag 'drm-fixes-2024-02-23' of git://anongit.freedesktop.org/drm/drm: (27 commits)
        nouveau: add an ioctl to report vram usage
        nouveau: add an ioctl to return vram bar size.
        nouveau/gsp: add kconfig option to enable GSP paths by default
        drm/amdgpu: Fix the runtime resume failure issue
        drm/amd/display: fix null-pointer dereference on edid reading
        drm/amd/display: Fix memory leak in dm_sw_fini()
        drm/amd/display: fix input states translation error for dcn35 & dcn351
        drm/amd/display: Fix potential null pointer dereference in dc_dmub_srv
        drm/amd/display: Only allow dig mapping to pwrseq in new asic
        drm/amd/display: adjust few initialization order in dm
        drm/syncobj: handle NULL fence in syncobj_eventfd_entry_func
        drm/syncobj: call drm_syncobj_fence_add_wait when WAIT_AVAILABLE flag is set
        drm/ttm: Fix an invalid freeing on already freed page in error path
        sparc: Fix undefined reference to fb_is_primary_device
        drm/xe: Fix modpost warning on xe_mocs kunit module
        drm/xe/xe_gt_idle: Drop redundant newline in name
        drm/xe: Return 2MB page size for compact 64k PTEs
        drm/xe: Add XE_VMA_PTE_64K VMA flag
        drm/xe: Fix xe_vma_set_pte_size
        drm/xe/uapi: Remove support for persistent exec_queues
        ...
      06b7ef70
    • Linus Torvalds's avatar
      Merge tag 'ata-6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/libata/linux · b6d69282
      Linus Torvalds authored
      Pull ata fixes from Niklas Cassel:
      
       - Do not try to set a sleeping device to standby. Sleep is a deeper
         sleep state than standby, and needs a reset to wake up the drive. A
         system resume will reset the port. Sending a command other than reset
         to a sleeping device is not wise, as the command will timeout (Damien
         Le Moal)
      
       - Do not try to put a device to standby twice during system shutdown.
         ata_dev_power_set_standby() is currently called twice during
         shutdown, once after the scsi device is removed, and another when
         ata_pci_shutdown_one() executes. Modify ata_dev_power_set_standby()
         to do nothing if the device is already in standby (Damien Le Moal)
      
       - Add a quirk for ASM1064 to fixup the number of implemented ports. We
         probe all ports that the hardware reports to be implemented. Probing
         ports that are not implemented causes significantly increased boot
         time (Andrey Jr. Melnikov)
      
       - Fix error handling for the ahci_ceva driver. Ensure that the
         ahci_ceva driver does a proper cleanup of its resources in the error
         path (Radhey Shyam Pandey)
      
      * tag 'ata-6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/libata/linux:
        ata: libata-core: Do not call ata_dev_power_set_standby() twice
        ata: ahci_ceva: fix error handling for Xilinx GT PHY support
        ahci: asm1064: correct count of reported ports
        ata: libata-core: Do not try to set sleeping devices to standby
      b6d69282
    • Linus Torvalds's avatar
      Merge tag 'gpio-fixes-for-v6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux · 9cd42be8
      Linus Torvalds authored
      Pull gpio fix from Bartosz Golaszewski:
      
       - fix a use-case where no pins are mapped to GPIOs in
         gpiochip_generic_config()
      
      * tag 'gpio-fixes-for-v6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux:
        gpiolib: Handle no pin_ranges in gpiochip_generic_config()
      9cd42be8
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-v6.8-rc6' of... · 76d885a1
      Linus Torvalds authored
      Merge tag 'hwmon-for-v6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
      
      Pull hwmon fix from Guenter Roeck:
       "Fix a global-out-of-bounds bug in nct6775 driver"
      
      * tag 'hwmon-for-v6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (nct6775) Fix access to temperature configuration registers
      76d885a1
  2. Feb 23, 2024
    • Arnd Bergmann's avatar
      Merge tag 'renesas-fixes-for-v6.8-tag1' of... · dcb8e53e
      Arnd Bergmann authored
      Merge tag 'renesas-fixes-for-v6.8-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/fixes
      
      Renesas fixes for v6.8
      
        - Add missing #interrupt-cells to DA9063 nodes.
      
      * tag 'renesas-fixes-for-v6.8-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
        ARM: dts: renesas: rcar-gen2: Add missing #interrupt-cells to DA9063 nodes
      
      Link: https://lore.kernel.org/r/cover.1708597150.git.geert+renesas@glider.be
      
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      dcb8e53e
    • Arnd Bergmann's avatar
      Merge tag 'riscv-dt-fixes-for-v6.8-rc6' of... · 4bd5b4c2
      Arnd Bergmann authored
      Merge tag 'riscv-dt-fixes-for-v6.8-rc6' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux
      
       into arm/fixes
      
      RISC-V Devicetree fixes for v6.8-rc6
      
      Two fixes for W=2 issues in devicetrees, which should constitute fixes
      for all reasonable-to-fix W=2 problems on RISC-V. The others are caused
      by standard USB and MMC property names containing underscores that are
      not likely to ever change.
      
      Signed-off-by: default avatarConor Dooley <conor.dooley@microchip.com>
      
      * tag 'riscv-dt-fixes-for-v6.8-rc6' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux:
        riscv: dts: sifive: add missing #interrupt-cells to pmic
        riscv: dts: starfive: replace underscores in node names
      
      Link: https://lore.kernel.org/r/20240221-foil-glade-09dbf1aa3fe2@spud
      
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      4bd5b4c2
    • Arnd Bergmann's avatar
      Merge tag 'riscv-soc-drivers-fixes-for-v6.8-rc6' of... · fe514e17
      Arnd Bergmann authored
      Merge tag 'riscv-soc-drivers-fixes-for-v6.8-rc6' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux
      
       into arm/fixes
      
      RISC-V SoC driver fixes for v6.8-rc6
      
      A fix for a kconfig symbol whose help text has been unhelpful since its
      introduction.
      
      Signed-off-by: default avatarConor Dooley <conor.dooley@microchip.com>
      
      * tag 'riscv-soc-drivers-fixes-for-v6.8-rc6' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux:
        soc: microchip: Fix POLARFIRE_SOC_SYS_CTRL input prompt
      
      Link: https://lore.kernel.org/r/20240221-irate-outrage-cf7f96f83074@spud
      
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      fe514e17
    • Arnd Bergmann's avatar
      Merge tag 'riscv-firmware-fixes-for-v6.8-rc6' of... · 4d934f94
      Arnd Bergmann authored
      Merge tag 'riscv-firmware-fixes-for-v6.8-rc6' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux
      
       into arm/fixes
      
      Microchip firmware driver fixes for v6.8-rc6
      
      A single fix for me incorrectly using sizeof().
      
      Signed-off-by: default avatarConor Dooley <conor.dooley@microchip.com>
      
      * tag 'riscv-firmware-fixes-for-v6.8-rc6' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux:
        firmware: microchip: fix wrong sizeof argument
      
      Link: https://lore.kernel.org/r/20240221-recognize-dust-4bb575f4e67b@spud
      
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      4d934f94
    • Arnd Bergmann's avatar
      Merge tag 'riscv-cache-fixes-for-v6.8-rc6' of... · bcb323bd
      Arnd Bergmann authored
      Merge tag 'riscv-cache-fixes-for-v6.8-rc6' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux
      
       into arm/fixes
      
      RISC-V Cache driver fixes for v6.8-rc6
      
      A single fix for an inconsistency reported during CIP review by Pavel in
      the newly added ax45mp cache driver.
      
      Signed-off-by: default avatarConor Dooley <conor.dooley@microchip.com>
      
      * tag 'riscv-cache-fixes-for-v6.8-rc6' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux:
        cache: ax45mp_cache: Align end size to cache boundary in ax45mp_dma_cache_wback()
      
      Link: https://lore.kernel.org/r/20240221-keenness-handheld-b930aaa77708@spud
      
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      bcb323bd
    • Dave Airlie's avatar
      nouveau: add an ioctl to report vram usage · 72fa02fd
      Dave Airlie authored
      
      
      This reports the currently used vram allocations.
      
      userspace using this has been proposed for nvk, but
      it's a rather trivial uapi addition.
      
      Reviewed-by: default avatarFaith Ekstrand <faith.ekstrand@collabora.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      72fa02fd
    • Dave Airlie's avatar
      nouveau: add an ioctl to return vram bar size. · 3f4d8aac
      Dave Airlie authored
      
      
      This returns the BAR resources size so userspace can make
      decisions based on rebar support.
      
      userspace using this has been proposed for nvk, but
      it's a rather trivial uapi addition.
      
      Reviewed-by: default avatarFaith Ekstrand <faith.ekstrand@collabora.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      3f4d8aac
    • Dave Airlie's avatar
      nouveau/gsp: add kconfig option to enable GSP paths by default · 1d492944
      Dave Airlie authored
      
      
      Turing and Ampere will continue to use the old paths by default,
      but we should allow distros to decide what the policy is.
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20240214040632.661069-1-airlied@gmail.com
      1d492944
    • Dave Airlie's avatar
      Merge tag 'drm-xe-fixes-2024-02-22' of https://gitlab.freedesktop.org/drm/xe/kernel into drm-fixes · 7c548869
      Dave Airlie authored
      
      
      UAPI Changes:
      - Remove support for persistent exec_queues
      - Drop a reduntant sysfs newline printout
      
      Cross-subsystem Changes:
      
      Core Changes:
      
      Driver Changes:
      - A three-patch fix for a VM_BIND rebind optimization path
      - Fix a modpost warning on an xe KUNIT module
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Thomas Hellstrom <thomas.hellstrom@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/ZdcsNrxdWMMM417v@fedora
      7c548869
    • Dave Airlie's avatar
      Merge tag 'amd-drm-fixes-6.8-2024-02-22' of... · bfc7746a
      Dave Airlie authored
      Merge tag 'amd-drm-fixes-6.8-2024-02-22' of https://gitlab.freedesktop.org/agd5f/linux
      
       into drm-fixes
      
      amd-drm-fixes-6.8-2024-02-22:
      
      amdgpu:
      - Suspend/resume fixes
      - Backlight error fix
      - DCN 3.5 fixes
      - Misc fixes
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Alex Deucher <alexander.deucher@amd.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20240222195338.5809-1-alexander.deucher@amd.com
      bfc7746a
    • Dave Airlie's avatar
      Merge tag 'drm-intel-fixes-2024-02-22' of... · 741922e7
      Dave Airlie authored
      Merge tag 'drm-intel-fixes-2024-02-22' of git://anongit.freedesktop.org/drm/drm-intel
      
       into drm-fixes
      
      - Fixup for TV mode
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/ZdcwT9kltvEgJZZE@jlahtine-mobl.ger.corp.intel.com
      741922e7
    • Dave Airlie's avatar
      Merge tag 'drm-misc-fixes-2024-02-22' of git://anongit.freedesktop.org/drm/drm-misc into drm-fixes · f581dbb3
      Dave Airlie authored
      
      
      A list handling fix and 64bit division on 32bit platform fix for the
      drm/buddy allocator, a cast warning and an initialization fix for
      nouveau, a bridge handling fix for meson, an initialisation fix for
      ivpu, a SPARC build fix for fbdev, a double-free fix for ttm, and two
      fence handling fixes for syncobj.
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Maxime Ripard <mripard@redhat.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/gl2antuifidtzn3dfm426p7xwh5fxj23behagwh26owfnosh2w@gqoa7vj5prnh
      f581dbb3
    • Linus Torvalds's avatar
      Merge tag 'block-6.8-2024-02-22' of git://git.kernel.dk/linux · ffd2cb6b
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "Mostly just fixlets for md, but also a sed-opal parsing fix"
      
      * tag 'block-6.8-2024-02-22' of git://git.kernel.dk/linux:
        block: sed-opal: handle empty atoms when parsing response
        md: Don't suspend the array for interrupted reshape
        md: Don't register sync_thread for reshape directly
        md: Make sure md_do_sync() will set MD_RECOVERY_DONE
        md: Don't ignore read-only array in md_check_recovery()
        md: Don't ignore suspended array in md_check_recovery()
        md: Fix missing release of 'active_io' for flush
      ffd2cb6b
    • Linus Torvalds's avatar
      Merge tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd · 4c36fbb4
      Linus Torvalds authored
      Pull iommufd fixes from Jason Gunthorpe:
      
       - Fix dirty tracking bitmap collection when using reporting bitmaps
         that are not neatly aligned to u64's or match the IO page table radix
         tree layout.
      
       - Add self tests to cover the cases that were found to be broken.
      
       - Add missing enforcement of invalidation type in the uapi.
      
       - Fix selftest config generation
      
      * tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd:
        selftests/iommu: fix the config fragment
        iommufd: Reject non-zero data_type if no data_len is provided
        iommufd/iova_bitmap: Consider page offset for the pages to be pinned
        iommufd/selftest: Add mock IO hugepages tests
        iommufd/selftest: Hugepage mock domain support
        iommufd/selftest: Refactor mock_domain_read_and_clear_dirty()
        iommufd/selftest: Refactor dirty bitmap tests
        iommufd/iova_bitmap: Handle recording beyond the mapped pages
        iommufd/selftest: Test u64 unaligned bitmaps
        iommufd/iova_bitmap: Switch iova_bitmap::bitmap to an u8 array
        iommufd/iova_bitmap: Bounds check mapped::pages access
      4c36fbb4
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v6.8-3' of... · c7138f7a
      Linus Torvalds authored
      Merge tag 'platform-drivers-x86-v6.8-3' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86
      
      Pull x86 platform driver fixes from Hans de Goede:
       "Regression fixes:
      
         - Fix INT0002 vGPIO events no longer working after 6.8 ACPI SCI
           changes
      
         - AMD-PMF: Fix laptops (e.g. Framework 13 AMD) hanging on suspend
      
         - x86-android-tablets: Fix touchscreen no longer working on Lenovo
           Yogabook
      
         - x86-android-tablets: Fix serdev instantiation regression
      
         - intel-vbtn: Fix ThinkPad X1 Tablet Gen2 no longer suspending
      
        Bug fixes:
      
         - think-lmi: Fix changing BIOS settings on Lenovo workstations
      
         - touchscreen_dmi: Fix Hi8 Air touchscreen data sometimes missing
      
         - AMD-PMF: Fix Smart PC support not working after suspend/resume
      
        Other misc small fixes"
      
      * tag 'platform-drivers-x86-v6.8-3' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86:
        platform/x86: thinkpad_acpi: Only update profile if successfully converted
        platform/x86: intel-vbtn: Stop calling "VBDL" from notify_handler
        platform/x86: x86-android-tablets: Fix acer_b1_750_goodix_gpios name
        platform/x86: x86-android-tablets: Fix serdev instantiation no longer working
        platform/x86: Add new get_serdev_controller() helper
        platform/x86: x86-android-tablets: Fix keyboard touchscreen on Lenovo Yogabook1 X90
        platform/x86/amd/pmf: Fix a potential race with policy binary sideload
        platform/x86/amd/pmf: Fixup error handling for amd_pmf_init_smart_pc()
        platform/x86/amd/pmf: Add debugging message for missing policy data
        platform/x86/amd/pmf: Fix a suspend hang on Framework 13
        platform/x86/amd/pmf: Fix TEE enact command failure after suspend and resume
        platform/x86/amd/pmf: Remove smart_pc_status enum
        platform/x86: touchscreen_dmi: Consolidate Goodix upside-down touchscreen data
        platform/x86: touchscreen_dmi: Allow partial (prefix) matches for ACPI names
        platform/x86: intel: int0002_vgpio: Pass IRQF_ONESHOT to request_irq()
        platform/x86: think-lmi: Fix password opcode ordering for workstations
      c7138f7a
    • Linus Torvalds's avatar
      Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · 88953761
      Linus Torvalds authored
      Pull clk fixes from Stephen Boyd:
       "Here are some Samsung clk driver fixes I've been sitting on for far
        too long.
      
        They fix the bindings and clk driver for the Google GS101 SoC"
      
      * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
        clk: samsung: clk-gs101: comply with the new dt cmu_misc clock names
        dt-bindings: clock: gs101: rename cmu_misc clock-names
      88953761
    • Linus Torvalds's avatar
      Merge tag 'vfs-6.8-rc6.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs · 1c892cdd
      Linus Torvalds authored
      Pull vfs fixes from Christian Brauner:
      
       - Fix a memory leak in cachefiles
      
       - Restrict aio cancellations to I/O submitted through the aio
         interfaces as this is otherwise causing issues for I/O submitted
         via io_uring
      
       - Increase buffer for afs volume status to avoid overflow
      
       - Fix a missing zero-length check in unbuffered writes in the
         netfs library. If generic_write_checks() returns zero make
         netfs_unbuffered_write_iter() return right away
      
       - Prevent a leak in i_dio_count caused by netfs_begin_read() operating
         past i_size. It will return early and leave i_dio_count incremented
      
       - Account for ipv4 addresses as well as ipv6 addresses when processing
         incoming callbacks in afs
      
      * tag 'vfs-6.8-rc6.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs:
        fs/aio: Restrict kiocb_set_cancel_fn() to I/O submitted via libaio
        afs: Increase buffer size in afs_update_volume_status()
        afs: Fix ignored callbacks over ipv4
        cachefiles: fix memory leak in cachefiles_add_cache()
        netfs: Fix missing zero-length check in unbuffered write
        netfs: Fix i_dio_count leak on DIO read past i_size
      1c892cdd
    • Linus Torvalds's avatar
      Merge tag 'net-6.8.0-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · 6714ebb9
      Linus Torvalds authored
      Pull networking fixes from Paolo Abeni:
       "Including fixes from bpf and netfilter.
      
        Current release - regressions:
      
         - af_unix: fix another unix GC hangup
      
        Previous releases - regressions:
      
         - core: fix a possible AF_UNIX deadlock
      
         - bpf: fix NULL pointer dereference in sk_psock_verdict_data_ready()
      
         - netfilter: nft_flow_offload: release dst in case direct xmit path
           is used
      
         - bridge: switchdev: ensure MDB events are delivered exactly once
      
         - l2tp: pass correct message length to ip6_append_data
      
         - dccp/tcp: unhash sk from ehash for tb2 alloc failure after
           check_estalblished()
      
         - tls: fixes for record type handling with PEEK
      
         - devlink: fix possible use-after-free and memory leaks in
           devlink_init()
      
        Previous releases - always broken:
      
         - bpf: fix an oops when attempting to read the vsyscall page through
           bpf_probe_read_kernel
      
         - sched: act_mirred: use the backlog for mirred ingress
      
         - netfilter: nft_flow_offload: fix dst refcount underflow
      
         - ipv6: sr: fix possible use-after-free and null-ptr-deref
      
         - mptcp: fix several data races
      
         - phonet: take correct lock to peek at the RX queue
      
        Misc:
      
         - handful of fixes and reliability improvements for selftests"
      
      * tag 'net-6.8.0-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (72 commits)
        l2tp: pass correct message length to ip6_append_data
        net: phy: realtek: Fix rtl8211f_config_init() for RTL8211F(D)(I)-VD-CG PHY
        selftests: ioam: refactoring to align with the fix
        Fix write to cloned skb in ipv6_hop_ioam()
        phonet/pep: fix racy skb_queue_empty() use
        phonet: take correct lock to peek at the RX queue
        net: sparx5: Add spinlock for frame transmission from CPU
        net/sched: flower: Add lock protection when remove filter handle
        devlink: fix port dump cmd type
        net: stmmac: Fix EST offset for dwmac 5.10
        tools: ynl: don't leak mcast_groups on init error
        tools: ynl: make sure we always pass yarg to mnl_cb_run
        net: mctp: put sock on tag allocation failure
        netfilter: nf_tables: use kzalloc for hook allocation
        netfilter: nf_tables: register hooks last when adding new chain/flowtable
        netfilter: nft_flow_offload: release dst in case direct xmit path is used
        netfilter: nft_flow_offload: reset dst in route object after setting up flow
        netfilter: nf_tables: set dormant flag on hook register failure
        selftests: tls: add test for peeking past a record of a different type
        selftests: tls: add test for merging of same-type control messages
        ...
      6714ebb9
    • Ma Jun's avatar
      drm/amdgpu: Fix the runtime resume failure issue · bbfaf2ae
      Ma Jun authored
      Don't set power state flag when system enter runtime suspend,
      or it may cause runtime resume failure issue.
      
      Fixes: 3a9626c8
      
       ("drm/amd: Stop evicting resources on APUs in suspend")
      Signed-off-by: default avatarMa Jun <Jun.Ma2@amd.com>
      Reviewed-by: default avatarMario Limonciello <mario.limonciello@amd.com>
      Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      Cc: stable@vger.kernel.org
      bbfaf2ae
    • Melissa Wen's avatar
      drm/amd/display: fix null-pointer dereference on edid reading · 96717617
      Melissa Wen authored
      Use i2c adapter when there isn't aux_mode in dc_link to fix a
      null-pointer derefence that happens when running
      igt@kms_force_connector_basic in a system with DCN2.1 and HDMI connector
      detected as below:
      
      [  +0.178146] BUG: kernel NULL pointer dereference, address: 00000000000004c0
      [  +0.000010] #PF: supervisor read access in kernel mode
      [  +0.000005] #PF: error_code(0x0000) - not-present page
      [  +0.000004] PGD 0 P4D 0
      [  +0.000006] Oops: 0000 [#1] PREEMPT SMP NOPTI
      [  +0.000006] CPU: 15 PID: 2368 Comm: kms_force_conne Not tainted 6.5.0-asdn+ #152
      [  +0.000005] Hardware name: HP HP ENVY x360 Convertible 13-ay1xxx/8929, BIOS F.01 07/14/2021
      [  +0.000004] RIP: 0010:i2c_transfer+0xd/0x100
      [  +0.000011] Code: ea fc ff ff 66 0f 1f 84 00 00 00 00 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa 0f 1f 44 00 00 41 54 55 53 <48> 8b 47 10 48 89 fb 48 83 38 00 0f 84 b3 00 00 00 83 3d 2f 80 16
      [  +0.000004] RSP: 0018:ffff9c4f89c0fad0 EFLAGS: 00010246
      [  +0.000005] RAX: 0000000000000000 RBX: 0000000000000005 RCX: 0000000000000080
      [  +0.000003] RDX: 0000000000000002 RSI: ffff9c4f89c0fb20 RDI: 00000000000004b0
      [  +0.000003] RBP: ffff9c4f89c0fb80 R08: 0000000000000080 R09: ffff8d8e0b15b980
      [  +0.000003] R10: 00000000000380e0 R11: 0000000000000000 R12: 0000000000000080
      [  +0.000002] R13: 0000000000000002 R14: ffff9c4f89c0fb0e R15: ffff9c4f89c0fb0f
      [  +0.000004] FS:  00007f9ad2176c40(0000) GS:ffff8d90fe9c0000(0000) knlGS:0000000000000000
      [  +0.000003] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [  +0.000004] CR2: 00000000000004c0 CR3: 0000000121bc4000 CR4: 0000000000750ee0
      [  +0.000003] PKRU: 55555554
      [  +0.000003] Call Trace:
      [  +0.000006]  <TASK>
      [  +0.000006]  ? __die+0x23/0x70
      [  +0.000011]  ? page_fault_oops+0x17d/0x4c0
      [  +0.000008]  ? preempt_count_add+0x6e/0xa0
      [  +0.000008]  ? srso_alias_return_thunk+0x5/0x7f
      [  +0.000011]  ? exc_page_fault+0x7f/0x180
      [  +0.000009]  ? asm_exc_page_fault+0x26/0x30
      [  +0.000013]  ? i2c_transfer+0xd/0x100
      [  +0.000010]  drm_do_probe_ddc_edid+0xc2/0x140 [drm]
      [  +0.000067]  ? srso_alias_return_thunk+0x5/0x7f
      [  +0.000006]  ? _drm_do_get_edid+0x97/0x3c0 [drm]
      [  +0.000043]  ? __pfx_drm_do_probe_ddc_edid+0x10/0x10 [drm]
      [  +0.000042]  edid_block_read+0x3b/0xd0 [drm]
      [  +0.000043]  _drm_do_get_edid+0xb6/0x3c0 [drm]
      [  +0.000041]  ? __pfx_drm_do_probe_ddc_edid+0x10/0x10 [drm]
      [  +0.000043]  drm_edid_read_custom+0x37/0xd0 [drm]
      [  +0.000044]  amdgpu_dm_connector_mode_valid+0x129/0x1d0 [amdgpu]
      [  +0.000153]  drm_connector_mode_valid+0x3b/0x60 [drm_kms_helper]
      [  +0.000000]  __drm_helper_update_and_validate+0xfe/0x3c0 [drm_kms_helper]
      [  +0.000000]  ? amdgpu_dm_connector_get_modes+0xb6/0x520 [amdgpu]
      [  +0.000000]  ? srso_alias_return_thunk+0x5/0x7f
      [  +0.000000]  drm_helper_probe_single_connector_modes+0x2ab/0x540 [drm_kms_helper]
      [  +0.000000]  status_store+0xb2/0x1f0 [drm]
      [  +0.000000]  kernfs_fop_write_iter+0x136/0x1d0
      [  +0.000000]  vfs_write+0x24d/0x440
      [  +0.000000]  ksys_write+0x6f/0xf0
      [  +0.000000]  do_syscall_64+0x60/0xc0
      [  +0.000000]  ? srso_alias_return_thunk+0x5/0x7f
      [  +0.000000]  ? syscall_exit_to_user_mode+0x2b/0x40
      [  +0.000000]  ? srso_alias_return_thunk+0x5/0x7f
      [  +0.000000]  ? do_syscall_64+0x6c/0xc0
      [  +0.000000]  ? do_syscall_64+0x6c/0xc0
      [  +0.000000]  entry_SYSCALL_64_after_hwframe+0x6e/0xd8
      [  +0.000000] RIP: 0033:0x7f9ad46b4b00
      [  +0.000000] Code: 40 00 48 8b 15 19 b3 0d 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b7 0f 1f 00 80 3d e1 3a 0e 00 00 74 17 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 58 c3 0f 1f 80 00 00 00 00 48 83 ec 28 48 89
      [  +0.000000] RSP: 002b:00007ffcbd3bd6d8 EFLAGS: 00000202 ORIG_RAX: 0000000000000001
      [  +0.000000] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f9ad46b4b00
      [  +0.000000] RDX: 0000000000000002 RSI: 00007f9ad48a7417 RDI: 0000000000000009
      [  +0.000000] RBP: 0000000000000002 R08: 0000000000000064 R09: 0000000000000000
      [  +0.000000] R10: 0000000000000000 R11: 0000000000000202 R12: 00007f9ad48a7417
      [  +0.000000] R13: 0000000000000009 R14: 00007ffcbd3bd760 R15: 0000000000000001
      [  +0.000000]  </TASK>
      [  +0.000000] Modules linked in: ctr ccm rfcomm snd_seq_dummy snd_hrtimer snd_seq snd_seq_device cmac algif_hash algif_skcipher af_alg bnep btusb btrtl btbcm btintel btmtk bluetooth uvcvideo videobuf2_vmalloc sha3_generic videobuf2_memops uvc jitterentropy_rng videobuf2_v4l2 videodev drbg videobuf2_common ansi_cprng mc ecdh_generic ecc qrtr binfmt_misc hid_sensor_accel_3d hid_sensor_magn_3d hid_sensor_gyro_3d hid_sensor_trigger industrialio_triggered_buffer kfifo_buf industrialio snd_ctl_led joydev hid_sensor_iio_common rtw89_8852ae rtw89_8852a rtw89_pci snd_hda_codec_realtek rtw89_core snd_hda_codec_generic intel_rapl_msr ledtrig_audio intel_rapl_common snd_hda_codec_hdmi mac80211 snd_hda_intel snd_intel_dspcfg kvm_amd snd_hda_codec snd_soc_dmic snd_acp3x_rn snd_acp3x_pdm_dma libarc4 snd_hwdep snd_soc_core kvm snd_hda_core cfg80211 snd_pci_acp6x snd_pcm nls_ascii snd_timer hp_wmi snd_pci_acp5x nls_cp437 snd_rn_pci_acp3x ucsi_acpi sparse_keymap ccp snd platform_profile snd_acp_config typec_ucsi irqbypass vfat sp5100_tco
      [  +0.000000]  snd_soc_acpi fat rapl pcspkr wmi_bmof roles rfkill rng_core snd_pci_acp3x soundcore k10temp watchdog typec battery ac amd_pmc acpi_tad button hid_sensor_hub hid_multitouch evdev serio_raw msr parport_pc ppdev lp parport fuse loop efi_pstore configfs ip_tables x_tables autofs4 ext4 crc16 mbcache jbd2 btrfs blake2b_generic dm_crypt dm_mod efivarfs raid10 raid456 async_raid6_recov async_memcpy async_pq async_xor async_tx libcrc32c crc32c_generic xor raid6_pq raid1 raid0 multipath linear md_mod amdgpu amdxcp i2c_algo_bit drm_ttm_helper ttm crc32_pclmul crc32c_intel drm_exec gpu_sched drm_suballoc_helper nvme ghash_clmulni_intel drm_buddy drm_display_helper sha512_ssse3 nvme_core ahci xhci_pci sha512_generic hid_generic xhci_hcd libahci rtsx_pci_sdmmc t10_pi i2c_hid_acpi drm_kms_helper i2c_hid mmc_core libata aesni_intel crc64_rocksoft_generic crypto_simd amd_sfh crc64_rocksoft scsi_mod usbcore cryptd crc_t10dif cec drm crct10dif_generic hid rtsx_pci crct10dif_pclmul scsi_common rc_core crc64 i2c_piix4
      [  +0.000000]  usb_common crct10dif_common video wmi
      [  +0.000000] CR2: 00000000000004c0
      [  +0.000000] ---[ end trace 0000000000000000 ]---
      
      Fixes: 0e859faf
      
       ("drm/amd/display: Remove unwanted drm edid references")
      Signed-off-by: default avatarMelissa Wen <mwen@igalia.com>
      Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      96717617
    • Armin Wolf's avatar
      drm/amd/display: Fix memory leak in dm_sw_fini() · bae67893
      Armin Wolf authored
      After destroying dmub_srv, the memory associated with it is
      not freed, causing a memory leak:
      
      unreferenced object 0xffff896302b45800 (size 1024):
        comm "(udev-worker)", pid 222, jiffies 4294894636
        hex dump (first 32 bytes):
          00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
          00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
        backtrace (crc 6265fd77):
          [<ffffffff993495ed>] kmalloc_trace+0x29d/0x340
          [<ffffffffc0ea4a94>] dm_dmub_sw_init+0xb4/0x450 [amdgpu]
          [<ffffffffc0ea4e55>] dm_sw_init+0x15/0x2b0 [amdgpu]
          [<ffffffffc0ba8557>] amdgpu_device_init+0x1417/0x24e0 [amdgpu]
          [<ffffffffc0bab285>] amdgpu_driver_load_kms+0x15/0x190 [amdgpu]
          [<ffffffffc0ba09c7>] amdgpu_pci_probe+0x187/0x4e0 [amdgpu]
          [<ffffffff9968fd1e>] local_pci_probe+0x3e/0x90
          [<ffffffff996918a3>] pci_device_probe+0xc3/0x230
          [<ffffffff99805872>] really_probe+0xe2/0x480
          [<ffffffff99805c98>] __driver_probe_device+0x78/0x160
          [<ffffffff99805daf>] driver_probe_device+0x1f/0x90
          [<ffffffff9980601e>] __driver_attach+0xce/0x1c0
          [<ffffffff99803170>] bus_for_each_dev+0x70/0xc0
          [<ffffffff99804822>] bus_add_driver+0x112/0x210
          [<ffffffff99807245>] driver_register+0x55/0x100
          [<ffffffff990012d1>] do_one_initcall+0x41/0x300
      
      Fix this by freeing dmub_srv after destroying it.
      
      Fixes: 743b9786
      
       ("drm/amd/display: Hook up the DMUB service in DM")
      Signed-off-by: default avatarArmin Wolf <W_Armin@gmx.de>
      Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      bae67893
    • Swapnil Patel's avatar
      drm/amd/display: fix input states translation error for dcn35 & dcn351 · 27a6c493
      Swapnil Patel authored
      
      
      [Why]
      Currently there is an error while translating input clock sates into
      output clock states. The highest fclk setting from output sates is
      being dropped because of this error.
      
      [How]
      For dcn35 and dcn351, make output_states equal to input states.
      
      Reviewed-by: default avatarCharlene Liu <charlene.liu@amd.com>
      Acked-by: default avatarRodrigo Siqueira <rodrigo.siqueira@amd.com>
      Tested-by: default avatarDaniel Wheeler <daniel.wheeler@amd.com>
      Signed-off-by: default avatarSwapnil Patel <swapnil.patel@amd.com>
      Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      27a6c493
    • Srinivasan Shanmugam's avatar
      drm/amd/display: Fix potential null pointer dereference in dc_dmub_srv · d2b48f34
      Srinivasan Shanmugam authored
      Fixes potential null pointer dereference warnings in the
      dc_dmub_srv_cmd_list_queue_execute() and dc_dmub_srv_is_hw_pwr_up()
      functions.
      
      In both functions, the 'dc_dmub_srv' variable was being dereferenced
      before it was checked for null. This could lead to a null pointer
      dereference if 'dc_dmub_srv' is null. The fix is to check if
      'dc_dmub_srv' is null before dereferencing it.
      
      Thus moving the null checks for 'dc_dmub_srv' to the beginning of the
      functions to ensure that 'dc_dmub_srv' is not null when it is
      dereferenced.
      
      Found by smatch & thus fixing the below:
      drivers/gpu/drm/amd/amdgpu/../display/dc/dc_dmub_srv.c:133 dc_dmub_srv_cmd_list_queue_execute() warn: variable dereferenced before check 'dc_dmub_srv' (see line 128)
      drivers/gpu/drm/amd/amdgpu/../display/dc/dc_dmub_srv.c:1167 dc_dmub_srv_is_hw_pwr_up() warn: variable dereferenced before check 'dc_dmub_srv' (see line 1164)
      
      Fixes: 028bac58 ("drm/amd/display: decouple dmcub execution to reduce lock granularity")
      Fixes: 65138eb7
      
       ("drm/amd/display: Add DCN35 DMUB")
      Cc: JinZe.Xu <jinze.xu@amd.com>
      Cc: Hersen Wu <hersenxs.wu@amd.com>
      Cc: Josip Pavic <josip.pavic@amd.com>
      Cc: Roman Li <roman.li@amd.com>
      Cc: Qingqing Zhuo <Qingqing.Zhuo@amd.com>
      Cc: Harry Wentland <Harry.Wentland@amd.com>
      Cc: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
      Cc: Aurabindo Pillai <aurabindo.pillai@amd.com>
      Cc: Tom Chung <chiahsuan.chung@amd.com>
      Signed-off-by: default avatarSrinivasan Shanmugam <srinivasan.shanmugam@amd.com>
      Reviewed-by: default avatarTom Chung <chiahsuan.chung@amd.com>
      Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      d2b48f34
    • Linus Torvalds's avatar
      Merge tag 'trace-v6.8-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace · efa80dcb
      Linus Torvalds authored
      Pull tracing fix from Steven Rostedt:
      
       - While working on the ring buffer I noticed that the counter used for
         knowing where the end of the data is on a sub-buffer was not a full
         "int" but just 20 bits. It was masked out to 0xfffff.
      
         With the new code that allows the user to change the size of the
         sub-buffer, it is theoretically possible to ask for a size bigger
         than 2^20. If that happens, unexpected results may occur as there's
         no code checking if the counter overflowed the 20 bits of the write
         mask. There are other checks to make sure events fit in the
         sub-buffer, but if the sub-buffer itself is too big, that is not
         checked.
      
         Add a check in the resize of the sub-buffer to make sure that it
         never goes beyond the size of the counter that holds how much data is
         on it.
      
      * tag 'trace-v6.8-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace:
        ring-buffer: Do not let subbuf be bigger than write mask
      efa80dcb
    • Lewis Huang's avatar
      drm/amd/display: Only allow dig mapping to pwrseq in new asic · 4e738260
      Lewis Huang authored
      [Why]
      The old asic only have 1 pwrseq hw.
      We don't need to map the diginst to pwrseq inst in old asic.
      
      [How]
      1. Only mapping dig to pwrseq for new asic.
      2. Move mapping function into dcn specific panel control component
      
      Cc: Stable <stable@vger.kernel.org> # v6.6+
      Cc: Mario Limonciello <mario.limonciello@amd.com>
      Link: https://gitlab.freedesktop.org/drm/amd/-/issues/3122
      
      
      Reviewed-by: default avatarAnthony Koo <anthony.koo@amd.com>
      Acked-by: default avatarRodrigo Siqueira <rodrigo.siqueira@amd.com>
      Tested-by: default avatarDaniel Wheeler <daniel.wheeler@amd.com>
      Signed-off-by: default avatarLewis Huang <lewis.huang@amd.com>
      Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      4e738260
    • Wayne Lin's avatar
      drm/amd/display: adjust few initialization order in dm · 22e1dc4b
      Wayne Lin authored
      
      
      [Why]
      Observe error message "Can't retrieve aconnector in hpd_rx_irq_offload_work"
      when boot up with a mst tbt4 dock connected. After analyzing, there are few
      parts needed to be adjusted:
      
      1. hpd_rx_offload_wq[].aconnector is not initialzed before the dmub outbox
      hpd_irq handler get registered which causes the error message.
      
      2. registeration of hpd and hpd_rx_irq event for usb4 dp tunneling is not
      aligned with legacy interface sequence
      
      [How]
      Put DMUB_NOTIFICATION_HPD and DMUB_NOTIFICATION_HPD_IRQ handler
      registration into register_hpd_handlers() to align other interfaces and
      get hpd_rx_offload_wq[].aconnector initialized earlier than that.
      
      Leave DMUB_NOTIFICATION_AUX_REPLY registered as it was since we need that
      while calling dc_link_detect(). USB4 connection status will be proactively
      detected by dc_link_detect_connection_type() in amdgpu_dm_initialize_drm_device()
      
      Cc: Stable <stable@vger.kernel.org>
      Reviewed-by: default avatarAurabindo Pillai <aurabindo.pillai@amd.com>
      Acked-by: default avatarRodrigo Siqueira <rodrigo.siqueira@amd.com>
      Tested-by: default avatarDaniel Wheeler <daniel.wheeler@amd.com>
      Signed-off-by: default avatarWayne Lin <wayne.lin@amd.com>
      Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      22e1dc4b
  3. Feb 22, 2024
    • Peter Oberparleiter's avatar
      s390/cio: fix invalid -EBUSY on ccw_device_start · 5ef1dc40
      Peter Oberparleiter authored
      The s390 common I/O layer (CIO) returns an unexpected -EBUSY return code
      when drivers try to start I/O while a path-verification (PV) process is
      pending. This can lead to failed device initialization attempts with
      symptoms like broken network connectivity after boot.
      
      Fix this by replacing the -EBUSY return code with a deferred condition
      code 1 reply to make path-verification handling consistent from a
      driver's point of view.
      
      The problem can be reproduced semi-regularly using the following process,
      while repeating steps 2-3 as necessary (example assumes an OSA device
      with bus-IDs 0.0.a000-0.0.a002 on CHPID 0.02):
      
      1. echo 0.0.a000,0.0.a001,0.0.a002 >/sys/bus/ccwgroup/drivers/qeth/group
      2. echo 0 > /sys/bus/ccwgroup/devices/0.0.a000/online
      3. echo 1 > /sys/bus/ccwgroup/devices/0.0.a000/online ; \
         echo on > /sys/devices/css0/chp0.02/status
      
      Background information:
      
      The common I/O layer starts path-verification I/Os when it receives
      indications about changes in a device path's availability. This occurs
      for example when hardware events indicate a change in channel-path
      status, or when a manual operation such as a CHPID vary or configure
      operation is performed.
      
      If a driver attempts to start I/O while a PV is running, CIO reports a
      successful I/O start (ccw_device_start() return code 0). Then, after
      completion of PV, CIO synthesizes an interrupt response that indicates
      an asynchronous status condition that prevented the start of the I/O
      (deferred condition code 1).
      
      If a PV indication arrives while a device is busy with driver-owned I/O,
      PV is delayed until after I/O completion was reported to the driver's
      interrupt handler. To ensure that PV can be started eventually, CIO
      reports a device busy condition (ccw_device_start() return code -EBUSY)
      if a driver tries to start another I/O while PV is pending.
      
      In some cases this -EBUSY return code causes device drivers to consider
      a device not operational, resulting in failed device initialization.
      
      Note: The code that introduced the problem was added in 2003. Symptoms
      started appearing with the following CIO commit that causes a PV
      indication when a device is removed from the cio_ignore list after the
      associated parent subchannel device was probed, but before online
      processing of the CCW device has started:
      
      2297791c ("s390/cio: dont unregister subchannel from child-drivers")
      
      During boot, the cio_ignore list is modified by the cio_ignore dracut
      module [1] as well as Linux vendor-specific systemd service scripts[2].
      When combined, this commit and boot scripts cause a frequent occurrence
      of the problem during boot.
      
      [1] https://github.com/dracutdevs/dracut/tree/master/modules.d/81cio_ignore
      [2] https://github.com/SUSE/s390-tools/blob/master/cio_ignore.service
      
      Cc: stable@vger.kernel.org # v5.15+
      Fixes: 2297791c
      
       ("s390/cio: dont unregister subchannel from child-drivers")
      Tested-By: default avatarThorsten Winkler <twinkler@linux.ibm.com>
      Reviewed-by: default avatarThorsten Winkler <twinkler@linux.ibm.com>
      Signed-off-by: default avatarPeter Oberparleiter <oberpar@linux.ibm.com>
      Signed-off-by: default avatarHeiko Carstens <hca@linux.ibm.com>
      5ef1dc40
    • Muhammad Usama Anjum's avatar
      selftests/iommu: fix the config fragment · 510325e5
      Muhammad Usama Anjum authored
      The config fragment doesn't follow the correct format to enable those
      config options which make the config options getting missed while
      merging with other configs.
      
      ➜ merge_config.sh -m .config tools/testing/selftests/iommu/config
      Using .config as base
      Merging tools/testing/selftests/iommu/config
      ➜ make olddefconfig
      .config:5295:warning: unexpected data: CONFIG_IOMMUFD
      .config:5296:warning: unexpected data: CONFIG_IOMMUFD_TEST
      
      While at it, add CONFIG_FAULT_INJECTION as well which is needed for
      CONFIG_IOMMUFD_TEST. If CONFIG_FAULT_INJECTION isn't present in base
      config (such as x86 defconfig), CONFIG_IOMMUFD_TEST doesn't get enabled.
      
      Fixes: 57f09887 ("iommufd: Add a selftest")
      Link: https://lore.kernel.org/r/20240222074934.71380-1-usama.anjum@collabora.com
      
      
      Signed-off-by: default avatarMuhammad Usama Anjum <usama.anjum@collabora.com>
      Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      510325e5
    • Erik Kurzinger's avatar
      drm/syncobj: handle NULL fence in syncobj_eventfd_entry_func · 2aa6f5b0
      Erik Kurzinger authored
      During syncobj_eventfd_entry_func, dma_fence_chain_find_seqno may set
      the fence to NULL if the given seqno is signaled and a later seqno has
      already been submitted. In that case, the eventfd should be signaled
      immediately which currently does not happen.
      
      This is a similar issue to the one addressed by commit b19926d4
      
      
      ("drm/syncobj: Deal with signalled fences in drm_syncobj_find_fence.").
      
      As a fix, if the return value of dma_fence_chain_find_seqno indicates
      success but it sets the fence to NULL, we will assign a stub fence to
      ensure the following code still signals the eventfd.
      
      v1 -> v2: assign a stub fence instead of signaling the eventfd
      
      Signed-off-by: default avatarErik Kurzinger <ekurzinger@nvidia.com>
      Fixes: c7a47229
      
       ("drm/syncobj: add IOCTL to register an eventfd")
      Signed-off-by: default avatarSimon Ser <contact@emersion.fr>
      Link: https://patchwork.freedesktop.org/patch/msgid/20240221184527.37667-1-ekurzinger@nvidia.com
      2aa6f5b0
    • Erik Kurzinger's avatar
      drm/syncobj: call drm_syncobj_fence_add_wait when WAIT_AVAILABLE flag is set · 3c43177f
      Erik Kurzinger authored
      When waiting for a syncobj timeline point whose fence has not yet been
      submitted with the WAIT_FOR_SUBMIT flag, a callback is registered using
      drm_syncobj_fence_add_wait and the thread is put to sleep until the
      timeout expires. If the fence is submitted before then,
      drm_syncobj_add_point will wake up the sleeping thread immediately which
      will proceed to wait for the fence to be signaled.
      
      However, if the WAIT_AVAILABLE flag is used instead,
      drm_syncobj_fence_add_wait won't get called, meaning the waiting thread
      will always sleep for the full timeout duration, even if the fence gets
      submitted earlier. If it turns out that the fence *has* been submitted
      by the time it eventually wakes up, it will still indicate to userspace
      that the wait completed successfully (it won't return -ETIME), but it
      will have taken much longer than it should have.
      
      To fix this, we must call drm_syncobj_fence_add_wait if *either* the
      WAIT_FOR_SUBMIT flag or the WAIT_AVAILABLE flag is set. The only
      difference being that with WAIT_FOR_SUBMIT we will also wait for the
      fence to be signaled after it has been submitted while with
      WAIT_AVAILABLE we will return immediately.
      
      IGT test patch: https://lists.freedesktop.org/archives/igt-dev/2024-January/067537.html
      
      v1 -> v2: adjust lockdep_assert_none_held_once condition
      
      (cherry picked from commit 8c44ea81)
      
      Fixes: 01d6c357
      
       ("drm/syncobj: add support for timeline point wait v8")
      Signed-off-by: default avatarErik Kurzinger <ekurzinger@nvidia.com>
      Signed-off-by: default avatarSimon Ser <contact@emersion.fr>
      Reviewed-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Reviewed-by: default avatarSimon Ser <contact@emersion.fr>
      Link: https://patchwork.freedesktop.org/patch/msgid/20240119163208.3723457-1-ekurzinger@nvidia.com
      3c43177f