1. 16 Feb, 2024 11 commits
    • Linus Torvalds's avatar
      Merge tag 'zonefs-6.8-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/zonefs · efb0b63a
      Linus Torvalds authored
      Pull zonefs fix from Damien Le Moal:
      
       - Fix direct write error handling to avoid a race between failed IO
         completion and the submission path itself which can result in an
         invalid file size exposed to the user after the failed IO.
      
      * tag 'zonefs-6.8-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/zonefs:
        zonefs: Improve error handling
      efb0b63a
    • Linus Torvalds's avatar
      Merge tag 'sound-6.8-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 0f1dd5e9
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "A collection of device-specific fixes. It became a bit bigger than
        wished, but all look reasonably small and safe to apply.
      
         - A few Cirrus Logic CS35L56 and CS42L43 driver fixes
      
         - ASoC SOF fixes and workarounds
      
         - Various ASoC Intel fixes
      
         - Lots of HD-, USB-audio and AMD ACP quirks"
      
      * tag 'sound-6.8-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (33 commits)
        ALSA: usb-audio: More relaxed check of MIDI jack names
        ALSA: hda/realtek: fix mute/micmute LED For HP mt645
        ALSA: hda/realtek: cs35l41: Fix order and duplicates in quirks table
        ALSA: hda/realtek: cs35l41: Fix device ID / model name
        ALSA: hda/realtek: cs35l41: Add internal speaker support for ASUS UM3402 with missing DSD
        ASoC: cs35l56: Workaround for ACPI with broken spk-id-gpios property
        ALSA: hda: Add Lenovo Legion 7i gen7 sound quirk
        ASoC: SOF: IPC3: fix message bounds on ipc ops
        ASoC: SOF: ipc4-pcm: Workaround for crashed firmware on system suspend
        ASoC: q6dsp: fix event handler prototype
        ASoC: SOF: Intel: pci-lnl: Change the topology path to intel/sof-ipc4-tplg
        ASoC: SOF: Intel: pci-tgl: Change the default paths and firmware names
        ASoC: amd: yc: Fix non-functional mic on Lenovo 82UU
        ASoC: rt5645: Add DMI quirk for inverted jack-detect on MeeGoPad T8
        ASoC: rt5645: Make LattePanda board DMI match more precise
        ASoC: SOF: amd: Fix locking in ACP IRQ handler
        ASoC: rt5645: Fix deadlock in rt5645_jack_detect_work()
        ASoC: Intel: cht_bsw_rt5645: Cleanup codec_name handling
        ASoC: Intel: Boards: Fix NULL pointer deref in BYT/CHT boards
        ASoC: cs35l56: Remove default from IRQ1_CFG register
        ...
      0f1dd5e9
    • Linus Torvalds's avatar
      Merge tag 'gpio-fixes-for-v6.8-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux · beda9c23
      Linus Torvalds authored
      Pull gpio fixes from Bartosz Golaszewski:
      
       - add missing stubs for functions that are not built with GPIOLIB
         disabled
      
      * tag 'gpio-fixes-for-v6.8-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux:
        gpiolib: add gpio_device_get_label() stub for !GPIOLIB
        gpiolib: add gpio_device_get_base() stub for !GPIOLIB
        gpiolib: add gpiod_to_gpio_device() stub for !GPIOLIB
      beda9c23
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2024-02-16' of git://anongit.freedesktop.org/drm/drm · ca6a62f9
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Regular weekly fixes, nothing too major, mostly amdgpu, then i915, xe,
        msm and nouveau with some scattered bits elsewhere.
      
        crtc:
         - fix uninit variable
      
        prime:
         - support > 4GB page arrays
      
        buddy:
         - fix error handling in allocations
      
        i915:
         - fix blankscreen on JSL chromebooks
         - stable fix to limit DP sst link rates
      
        xe:
         - Fix an out-of-bounds shift.
         - Fix the display code thinking xe uses shmem
         - Fix a warning about index out-of-bound
         - Fix a clang-16 compilation warning
      
        amdgpu:
         - PSR fixes
         - Suspend/resume fixes
         - Link training fix
         - Aspect ratio fix
         - DCN 3.5 fixes
         - VCN 4.x fix
         - GFX 11 fix
         - Misc display fixes
         - Misc small fixes
      
        amdkfd:
         - Cache size reporting fix
         - SIMD distribution fix
      
        msm:
         - GPU:
         - dmabuf vmap fix
         - a610 UBWC corruption fix (incorrect hbb)
         - revert a commit that was making GPU recovery unreliable
         - tlb invalidation fix
      
        ivpu:
         - suspend/resume fix
      
        nouveau:
         - fix scheduler cleanup path
         - fix pointless scheduler creation
         - fix kvalloc argument order
      
        rockchip:
         - vop2 locking fix"
      
      * tag 'drm-fixes-2024-02-16' of git://anongit.freedesktop.org/drm/drm: (38 commits)
        drm/amdgpu: Fix implicit assumtion in gfx11 debug flags
        drm/amdkfd: update SIMD distribution algo for GFXIP 9.4.2 onwards
        drm/amd/display: Increase ips2_eval delay for DCN35
        drm/amdgpu/display: Initialize gamma correction mode variable in dcn30_get_gamcor_current()
        drm/amdgpu/soc21: update VCN 4 max HEVC encoding resolution
        drm/amd/display: fixed integer types and null check locations
        drm/amd/display: Fix array-index-out-of-bounds in dcn35_clkmgr
        drm/amd/display: Preserve original aspect ratio in create stream
        drm/amd/display: Fix possible NULL dereference on device remove/driver unload
        Revert "drm/amd/display: increased min_dcfclk_mhz and min_fclk_mhz"
        drm/amd/display: Add align done check
        Revert "drm/amd: flush any delayed gfxoff on suspend entry"
        drm/amd: Stop evicting resources on APUs in suspend
        drm/amd/display: Fix possible buffer overflow in 'find_dcfclk_for_voltage()'
        drm/amd/display: Fix possible use of uninitialized 'max_chunks_fbc_mode' in 'calculate_bandwidth()'
        drm/amd/display: Initialize 'wait_time_microsec' variable in link_dp_training_dpia.c
        drm/amd/display: Fix && vs || typos
        drm/amdkfd: Fix L2 cache size reporting in GFX9.4.3
        drm/amdgpu: make damage clips support configurable
        drm/msm: Wire up tlb ops
        ...
      ca6a62f9
    • Linus Torvalds's avatar
      Merge tag 'lsm-pr-20240215' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm · b8ef9201
      Linus Torvalds authored
      Pull lsm fix from Paul Moore:
       "One small LSM patch to fix a potential integer overflow in the newly
        added lsm_set_self_attr() syscall"
      
      * tag 'lsm-pr-20240215' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm:
        lsm: fix integer overflow in lsm_set_self_attr() syscall
      b8ef9201
    • Dave Airlie's avatar
      Merge tag 'drm-msm-fixes-2024-02-15' of https://gitlab.freedesktop.org/drm/msm into drm-fixes · ea69f782
      Dave Airlie authored
      Fixes for v6.8-rc5
      
      GPU:
      - dmabuf vmap fix
      - a610 UBWC corruption fix (incorrect hbb)
      - revert a commit that was making GPU recovery unreliable
      - tlb invalidation fix
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Rob Clark <robdclark@gmail.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/CAF6AEGszDSiw66+a=ttBr-hat+zrcBtfc_cZ4LQqXu89DJ0UeQ@mail.gmail.com
      ea69f782
    • Dave Airlie's avatar
      Merge tag 'amd-drm-fixes-6.8-2024-02-15-2' of... · 44395701
      Dave Airlie authored
      Merge tag 'amd-drm-fixes-6.8-2024-02-15-2' of https://gitlab.freedesktop.org/agd5f/linux into drm-fixes
      
      amd-drm-fixes-6.8-2024-02-15-2:
      
      amdgpu:
      - PSR fixes
      - Suspend/resume fixes
      - Link training fix
      - Aspect ratio fix
      - DCN 3.5 fixes
      - VCN 4.x fix
      - GFX 11 fix
      - Misc display fixes
      - Misc small fixes
      
      amdkfd:
      - Cache size reporting fix
      - SIMD distribution fix
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Alex Deucher <alexander.deucher@amd.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20240215192452.11805-1-alexander.deucher@amd.com
      44395701
    • Dave Airlie's avatar
      Merge tag 'drm-xe-fixes-2024-02-15' of https://gitlab.freedesktop.org/drm/xe/kernel into drm-fixes · 427e337f
      Dave Airlie authored
      Driver Changes:
      - Fix an out-of-bounds shift.
      - Fix the display code thinking xe uses shmem
      - Fix a warning about index out-of-bound
      - Fix a clang-16 compilation warning
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Thomas Hellstrom <thomas.hellstrom@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/Zc4GpcrbFVqdK9Ws@fedora
      427e337f
    • Dave Airlie's avatar
      Merge tag 'drm-intel-fixes-2024-02-15' of... · 7e1c3be3
      Dave Airlie authored
      Merge tag 'drm-intel-fixes-2024-02-15' of git://anongit.freedesktop.org/drm/drm-intel into drm-fixes
      
      Fix for #10172: Blank screen on JSL Chromebooks. Stable fix to limit DP SST link rate to <=8.1Gbps.
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/Zc37W27F5OvoeSkG@jlahtine-mobl.ger.corp.intel.com
      7e1c3be3
    • Dave Airlie's avatar
      Merge tag 'drm-misc-fixes-2024-02-15' of git://anongit.freedesktop.org/drm/drm-misc into drm-fixes · 38df7e5e
      Dave Airlie authored
      A suspend/resume error fix for ivpu, a couple of scheduler fixes for
      nouveau, a patch to support large page arrays in prime, a uninitialized
      variable fix in crtc, a locking fix in rockchip/vop2 and a buddy
      allocator error reporting fix.
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Maxime Ripard <mripard@redhat.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/b4ffqzigtfh6cgzdpwuk6jlrv3dnk4hu6etiizgvibysqgtl2p@42n2gdfdd5eu
      38df7e5e
    • Damien Le Moal's avatar
      zonefs: Improve error handling · 14db5f64
      Damien Le Moal authored
      Write error handling is racy and can sometime lead to the error recovery
      path wrongly changing the inode size of a sequential zone file to an
      incorrect value  which results in garbage data being readable at the end
      of a file. There are 2 problems:
      
      1) zonefs_file_dio_write() updates a zone file write pointer offset
         after issuing a direct IO with iomap_dio_rw(). This update is done
         only if the IO succeed for synchronous direct writes. However, for
         asynchronous direct writes, the update is done without waiting for
         the IO completion so that the next asynchronous IO can be
         immediately issued. However, if an asynchronous IO completes with a
         failure right before the i_truncate_mutex lock protecting the update,
         the update may change the value of the inode write pointer offset
         that was corrected by the error path (zonefs_io_error() function).
      
      2) zonefs_io_error() is called when a read or write error occurs. This
         function executes a report zone operation using the callback function
         zonefs_io_error_cb(), which does all the error recovery handling
         based on the current zone condition, write pointer position and
         according to the mount options being used. However, depending on the
         zoned device being used, a report zone callback may be executed in a
         context that is different from the context of __zonefs_io_error(). As
         a result, zonefs_io_error_cb() may be executed without the inode
         truncate mutex lock held, which can lead to invalid error processing.
      
      Fix both problems as follows:
      - Problem 1: Perform the inode write pointer offset update before a
        direct write is issued with iomap_dio_rw(). This is safe to do as
        partial direct writes are not supported (IOMAP_DIO_PARTIAL is not
        set) and any failed IO will trigger the execution of zonefs_io_error()
        which will correct the inode write pointer offset to reflect the
        current state of the one on the device.
      - Problem 2: Change zonefs_io_error_cb() into zonefs_handle_io_error()
        and call this function directly from __zonefs_io_error() after
        obtaining the zone information using blkdev_report_zones() with a
        simple callback function that copies to a local stack variable the
        struct blk_zone obtained from the device. This ensures that error
        handling is performed holding the inode truncate mutex.
        This change also simplifies error handling for conventional zone files
        by bypassing the execution of report zones entirely. This is safe to
        do because the condition of conventional zones cannot be read-only or
        offline and conventional zone files are always fully mapped with a
        constant file size.
      Reported-by: default avatarShin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com>
      Fixes: 8dcc1a9d ("fs: New zonefs file system")
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarDamien Le Moal <dlemoal@kernel.org>
      Tested-by: default avatarShin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com>
      Reviewed-by: default avatarJohannes Thumshirn <johannes.thumshirn@wdc.com>
      Reviewed-by: default avatarHimanshu Madhani <himanshu.madhani@oracle.com>
      14db5f64
  2. 15 Feb, 2024 29 commits