Changelog in Linux kernel 6.6.53

 
accel: Use XArray instead of IDR for minors [+ + +]
Author: Michał Winiarski <[email protected]>
Date:   Fri Aug 23 18:30:47 2024 +0200

    accel: Use XArray instead of IDR for minors
    
    [ Upstream commit 45c4d994b82b08f0ce5eb50f8da29379c92a391e ]
    
    Accel minor management is based on DRM (and is also using struct
    drm_minor internally), since DRM is using XArray for minors, it makes
    sense to also convert accel.
    As the two implementations are identical (only difference being the
    underlying xarray), move the accel_minor_* functionality to DRM.
    
    Signed-off-by: Michał Winiarski <[email protected]>
    Acked-by: James Zhu <[email protected]>
    Acked-by: Christian König <[email protected]>
    Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
    Signed-off-by: Christian König <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
ALSA: hda/realtek - Fixed ALC256 headphone no sound [+ + +]
Author: Kailang Yang <[email protected]>
Date:   Thu Aug 22 10:54:19 2024 +0800

    ALSA: hda/realtek - Fixed ALC256 headphone no sound
    
    [ Upstream commit 9b82ff1362f50914c8292902e07be98a9f59d33d ]
    
    Dell platform, plug headphone or headset, it had a chance to get no
    sound from headphone.
    Replace depop procedure will solve this issue.
    
    Signed-off-by: Kailang Yang <[email protected]>
    Link: https://lore.kernel.org/[email protected]
    Signed-off-by: Takashi Iwai <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

ALSA: hda/realtek - FIxed ALC285 headphone no sound [+ + +]
Author: Kailang Yang <[email protected]>
Date:   Thu Aug 22 16:46:56 2024 +0800

    ALSA: hda/realtek - FIxed ALC285 headphone no sound
    
    [ Upstream commit 1fa7b099d60ad64f559bd3b8e3f0d94b2e015514 ]
    
    Dell platform with ALC215 ALC285 ALC289 ALC225 ALC295 ALC299, plug
    headphone or headset.
    It had a chance to get no sound from headphone.
    Replace depop procedure will solve this issue.
    
    Signed-off-by: Kailang Yang <[email protected]>
    Link: https://lore.kernel.org/[email protected]
    Signed-off-by: Takashi Iwai <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

ALSA: hda: add HDMI codec ID for Intel PTL [+ + +]
Author: Kai Vehmanen <[email protected]>
Date:   Fri Aug 30 15:24:58 2024 +0800

    ALSA: hda: add HDMI codec ID for Intel PTL
    
    [ Upstream commit e9481d9b83f8d9b3251aa428b02d8eba89d839ff ]
    
    Add HDMI codec ID for Intel Panther Lake platform.
    
    Signed-off-by: Kai Vehmanen <[email protected]>
    Reviewed-by: Péter Ujfalusi <[email protected]>
    Reviewed-by: Ranjani Sridharan <[email protected]>
    Signed-off-by: Bard Liao <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Takashi Iwai <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
ASoC: allow module autoloading for table board_ids [+ + +]
Author: Hongbo Li <[email protected]>
Date:   Wed Aug 21 14:19:55 2024 +0800

    ASoC: allow module autoloading for table board_ids
    
    [ Upstream commit 5f7c98b7519a3a847d9182bd99d57ea250032ca1 ]
    
    Add MODULE_DEVICE_TABLE(), so modules could be properly
    autoloaded based on the alias from platform_device_id table.
    
    Signed-off-by: Hongbo Li <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

ASoC: allow module autoloading for table db1200_pids [+ + +]
Author: Hongbo Li <[email protected]>
Date:   Wed Aug 21 14:19:54 2024 +0800

    ASoC: allow module autoloading for table db1200_pids
    
    [ Upstream commit 0e9fdab1e8df490354562187cdbb8dec643eae2c ]
    
    Add MODULE_DEVICE_TABLE(), so modules could be properly
    autoloaded based on the alias from platform_device_id table.
    
    Signed-off-by: Hongbo Li <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

ASoC: amd: yc: Add a quirk for MSI Bravo 17 (D7VEK) [+ + +]
Author: Markuss Broks <[email protected]>
Date:   Thu Aug 29 16:03:05 2024 +0300

    ASoC: amd: yc: Add a quirk for MSI Bravo 17 (D7VEK)
    
    [ Upstream commit 283844c35529300c8e10f7a263e35e3c5d3580ac ]
    
    MSI Bravo 17 (D7VEK), like other laptops from the family,
    has broken ACPI tables and needs a quirk for internal mic
    to work.
    
    Signed-off-by: Markuss Broks <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

ASoC: fix module autoloading [+ + +]
Author: Liao Chen <[email protected]>
Date:   Mon Aug 26 08:49:24 2024 +0000

    ASoC: fix module autoloading
    
    [ Upstream commit 6ba20539ac6b12ea757b3bfe11adf8de1672d7b8 ]
    
    Add MODULE_DEVICE_TABLE(), so modules could be properly autoloaded
    based on the alias from of_device_id table.
    
    Signed-off-by: Liao Chen <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

ASoC: google: fix module autoloading [+ + +]
Author: Liao Chen <[email protected]>
Date:   Mon Aug 26 08:49:22 2024 +0000

    ASoC: google: fix module autoloading
    
    [ Upstream commit 8e1bb4a41aa78d6105e59186af3dcd545fc66e70 ]
    
    Add MODULE_DEVICE_TABLE(), so modules could be properly autoloaded
    based on the alias from of_device_id table.
    
    Signed-off-by: Liao Chen <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

ASoC: intel: fix module autoloading [+ + +]
Author: Liao Chen <[email protected]>
Date:   Mon Aug 26 08:49:21 2024 +0000

    ASoC: intel: fix module autoloading
    
    [ Upstream commit ae61a3391088d29aa8605c9f2db84295ab993a49 ]
    
    Add MODULE_DEVICE_TABLE(), so modules could be properly autoloaded
    based on the alias from of_device_id table.
    
    Signed-off-by: Liao Chen <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

ASoC: Intel: soc-acpi-cht: Make Lenovo Yoga Tab 3 X90F DMI match less strict [+ + +]
Author: Hans de Goede <[email protected]>
Date:   Fri Aug 23 09:43:05 2024 +0200

    ASoC: Intel: soc-acpi-cht: Make Lenovo Yoga Tab 3 X90F DMI match less strict
    
    [ Upstream commit 839a4ec06f75cec8fec2cc5fc14e921d0c3f7369 ]
    
    There are 2G and 4G RAM versions of the Lenovo Yoga Tab 3 X90F and it
    turns out that the 2G version has a DMI product name of
    "CHERRYVIEW D1 PLATFORM" where as the 4G version has
    "CHERRYVIEW C0 PLATFORM". The sys-vendor + product-version check are
    unique enough that the product-name check is not necessary.
    
    Drop the product-name check so that the existing DMI match for the 4G
    RAM version also matches the 2G RAM version.
    
    Signed-off-by: Hans de Goede <[email protected]>
    Reviewed-by: Pierre-Louis Bossart <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

ASoC: mediatek: mt8188: Mark AFE_DAC_CON0 register as volatile [+ + +]
Author: YR Yang <[email protected]>
Date:   Thu Aug 1 16:43:26 2024 +0800

    ASoC: mediatek: mt8188: Mark AFE_DAC_CON0 register as volatile
    
    [ Upstream commit ff9f065318e17a1a97981d9e535fcfc6ce5d5614 ]
    
    Add AFE Control Register 0 to the volatile_register.
    AFE_DAC_CON0 can be modified by both the SOF and ALSA drivers.
    If this register is read and written in cache mode, the cached value
    might not reflect the actual value when the register is modified by
    another driver. It can cause playback or capture failures. Therefore,
    it is necessary to add AFE_DAC_CON0 to the list of volatile registers.
    
    Signed-off-by: YR Yang <[email protected]>
    Reviewed-by: Fei Shao <[email protected]>
    Reviewed-by: Trevor Wu <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

ASoC: SOF: mediatek: Add missing board compatible [+ + +]
Author: Albert Jakieła <[email protected]>
Date:   Fri Aug 9 13:56:27 2024 +0000

    ASoC: SOF: mediatek: Add missing board compatible
    
    [ Upstream commit c0196faaa927321a63e680427e075734ee656e42 ]
    
    Add Google Dojo compatible.
    
    Signed-off-by: Albert Jakieła <[email protected]>
    Reviewed-by: Chen-Yu Tsai <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>
ASoC: tda7419: fix module autoloading [+ + +]
Author: Liao Chen <[email protected]>
Date:   Mon Aug 26 08:49:23 2024 +0000

    ASoC: tda7419: fix module autoloading
    
    [ Upstream commit 934b44589da9aa300201a00fe139c5c54f421563 ]
    
    Add MODULE_DEVICE_TABLE(), so modules could be properly autoloaded
    based on the alias from of_device_id table.
    
    Signed-off-by: Liao Chen <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
block: Fix where bio IO priority gets set [+ + +]
Author: Hongyu Jin <[email protected]>
Date:   Tue Jan 30 15:26:34 2024 -0500

    block: Fix where bio IO priority gets set
    
    [ Upstream commit f3c89983cb4fc00be64eb0d5cbcfcdf2cacb965e ]
    
    Commit 82b74cac2849 ("blk-ioprio: Convert from rqos policy to direct
    call") pushed setting bio I/O priority down into blk_mq_submit_bio()
    -- which is too low within block core's submit_bio() because it
    skips setting I/O priority for block drivers that implement
    fops->submit_bio() (e.g. DM, MD, etc).
    
    Fix this by moving bio_set_ioprio() up from blk-mq.c to blk-core.c and
    call it from submit_bio().  This ensures all block drivers call
    bio_set_ioprio() during initial bio submission.
    
    Fixes: a78418e6a04c ("block: Always initialize bio IO priority on submit")
    Co-developed-by: Yibin Ding <[email protected]>
    Signed-off-by: Yibin Ding <[email protected]>
    Signed-off-by: Hongyu Jin <[email protected]>
    Reviewed-by: Eric Biggers <[email protected]>
    Reviewed-by: Mikulas Patocka <[email protected]>
    [snitzer: revised commit header]
    Signed-off-by: Mike Snitzer <[email protected]>
    Reviewed-by: Ming Lei <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jens Axboe <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
can: mcp251xfd: mcp251xfd_ring_init(): check TX-coalescing configuration [+ + +]
Author: Marc Kleine-Budde <[email protected]>
Date:   Fri Jul 5 17:24:42 2024 +0200

    can: mcp251xfd: mcp251xfd_ring_init(): check TX-coalescing configuration
    
    [ Upstream commit ac2b81eb8b2d104033560daea886ee84531e3d0a ]
    
    When changing the interface from CAN-CC to CAN-FD mode the old
    coalescing parameters are re-used. This might cause problem, as the
    configured parameters are too big for CAN-FD mode.
    
    During testing an invalid TX coalescing configuration has been seen.
    The problem should be been fixed in the previous patch, but add a
    safeguard here to ensure that the number of TEF coalescing buffers (if
    configured) is exactly the half of all TEF buffers.
    
    Link: https://lore.kernel.org/all/20240805-mcp251xfd-fix-ringconfig-v1-2-72086f0ca5ee@pengutronix.de
    Signed-off-by: Marc Kleine-Budde <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

can: mcp251xfd: move mcp251xfd_timestamp_start()/stop() into mcp251xfd_chip_start/stop() [+ + +]
Author: Marc Kleine-Budde <[email protected]>
Date:   Wed Jan 11 12:10:04 2023 +0100

    can: mcp251xfd: move mcp251xfd_timestamp_start()/stop() into mcp251xfd_chip_start/stop()
    
    commit a7801540f325d104de5065850a003f1d9bdc6ad3 upstream.
    
    The mcp251xfd wakes up from Low Power or Sleep Mode when SPI activity
    is detected. To avoid this, make sure that the timestamp worker is
    stopped before shutting down the chip.
    
    Split the starting of the timestamp worker out of
    mcp251xfd_timestamp_init() into the separate function
    mcp251xfd_timestamp_start().
    
    Call mcp251xfd_timestamp_init() before mcp251xfd_chip_start(), move
    mcp251xfd_timestamp_start() to mcp251xfd_chip_start(). In this way,
    mcp251xfd_timestamp_stop() can be called unconditionally by
    mcp251xfd_chip_stop().
    
    Signed-off-by: Marc Kleine-Budde <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>

can: mcp251xfd: properly indent labels [+ + +]
Author: Marc Kleine-Budde <[email protected]>
Date:   Thu Apr 25 10:14:45 2024 +0200

    can: mcp251xfd: properly indent labels
    
    commit 51b2a721612236335ddec4f3fb5f59e72a204f3a upstream.
    
    To fix the coding style, remove the whitespace in front of labels.
    
    Signed-off-by: Marc Kleine-Budde <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>

 
drm: Expand max DRM device number to full MINORBITS [+ + +]
Author: Michał Winiarski <[email protected]>
Date:   Fri Aug 23 18:30:48 2024 +0200

    drm: Expand max DRM device number to full MINORBITS
    
    [ Upstream commit 071d583e01c88272f6ff216d4f867f8f35e94d7d ]
    
    Having a limit of 64 DRM devices is not good enough for modern world
    where we have multi-GPU servers, SR-IOV virtual functions and virtual
    devices used for testing.
    Let's utilize full minor range for DRM devices.
    To avoid regressing the existing userspace, we're still maintaining the
    numbering scheme where 0-63 is used for primary, 64-127 is reserved
    (formerly for control) and 128-191 is used for render.
    For minors >= 192, we're allocating minors dynamically on a first-come,
    first-served basis.
    
    Signed-off-by: Michał Winiarski <[email protected]>
    Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
    Acked-by: James Zhu <[email protected]>
    Acked-by: Christian König <[email protected]>
    Signed-off-by: Christian König <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

drm: komeda: Fix an issue related to normalized zpos [+ + +]
Author: hongchi.peng <[email protected]>
Date:   Mon Aug 26 10:45:17 2024 +0800

    drm: komeda: Fix an issue related to normalized zpos
    
    [ Upstream commit 258905cb9a6414be5c9ca4aa20ef855f8dc894d4 ]
    
    We use komeda_crtc_normalize_zpos to normalize zpos of affected planes
    to their blending zorder in CU. If there's only one slave plane in
    affected planes and its layer_split property is enabled, order++ for
    its split layer, so that when calculating the normalized_zpos
    of master planes, the split layer of the slave plane is included, but
    the max_slave_zorder does not include the split layer and keep zero
    because there's only one slave plane in affacted planes, although we
    actually use two slave layers in this commit.
    
    In most cases, this bug does not result in a commit failure, but assume
    the following situation:
        slave_layer 0: zpos = 0, layer split enabled, normalized_zpos =
        0;(use slave_layer 2 as its split layer)
        master_layer 0: zpos = 2, layer_split enabled, normalized_zpos =
        2;(use master_layer 2 as its split layer)
        master_layer 1: zpos = 4, normalized_zpos = 4;
        master_layer 3: zpos = 5, normalized_zpos = 5;
        kcrtc_st->max_slave_zorder = 0;
    When we use master_layer 3 as a input of CU in function
    komeda_compiz_set_input and check it with function
    komeda_component_check_input, the parameter idx is equal to
    normailzed_zpos minus max_slave_zorder, the value of idx is 5
    and is euqal to CU's max_active_inputs, so that
    komeda_component_check_input returns a -EINVAL value.
    
    To fix the bug described above, when calculating the max_slave_zorder
    with the layer_split enabled, count the split layer in this calculation
    directly.
    
    Signed-off-by: hongchi.peng <[email protected]>
    Acked-by: Liviu Dudau <[email protected]>
    Signed-off-by: Liviu Dudau <[email protected]>
    Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
    Signed-off-by: Sasha Levin <[email protected]>

drm: Use XArray instead of IDR for minors [+ + +]
Author: Michał Winiarski <[email protected]>
Date:   Fri Aug 23 18:30:46 2024 +0200

    drm: Use XArray instead of IDR for minors
    
    [ Upstream commit 5fbca8b48b3050ae7fb611a8b09af60012ed6de1 ]
    
    IDR is deprecated, and since XArray manages its own state with internal
    locking, it simplifies the locking on DRM side.
    Additionally, don't use the IRQ-safe variant, since operating on drm
    minor is not done in IRQ context.
    
    Suggested-by: Matthew Wilcox <[email protected]>
    Signed-off-by: Michał Winiarski <[email protected]>
    Acked-by: James Zhu <[email protected]>
    Acked-by: Christian König <[email protected]>
    Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
    Signed-off-by: Christian König <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
gpiolib: cdev: Ignore reconfiguration without direction [+ + +]
Author: Kent Gibson <[email protected]>
Date:   Wed Jun 26 13:29:23 2024 +0800

    gpiolib: cdev: Ignore reconfiguration without direction
    
    commit b440396387418fe2feaacd41ca16080e7a8bc9ad upstream.
    
    linereq_set_config() behaves badly when direction is not set.
    The configuration validation is borrowed from linereq_create(), where,
    to verify the intent of the user, the direction must be set to in order to
    effect a change to the electrical configuration of a line. But, when
    applied to reconfiguration, that validation does not allow for the unset
    direction case, making it possible to clear flags set previously without
    specifying the line direction.
    
    Adding to the inconsistency, those changes are not immediately applied by
    linereq_set_config(), but will take effect when the line value is next get
    or set.
    
    For example, by requesting a configuration with no flags set, an output
    line with GPIO_V2_LINE_FLAG_ACTIVE_LOW and GPIO_V2_LINE_FLAG_OPEN_DRAIN
    set could have those flags cleared, inverting the sense of the line and
    changing the line drive to push-pull on the next line value set.
    
    Skip the reconfiguration of lines for which the direction is not set, and
    only reconfigure the lines for which direction is set.
    
    Fixes: a54756cb24ea ("gpiolib: cdev: support GPIO_V2_LINE_SET_CONFIG_IOCTL")
    Signed-off-by: Kent Gibson <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Bartosz Golaszewski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>

 
hwmon: (asus-ec-sensors) remove VRM temp X570-E GAMING [+ + +]
Author: Ross Brown <[email protected]>
Date:   Tue Jul 30 08:21:42 2024 +0200

    hwmon: (asus-ec-sensors) remove VRM temp X570-E GAMING
    
    [ Upstream commit 9efaebc0072b8e95505544bf385c20ee8a29d799 ]
    
    X570-E GAMING does not have VRM temperature sensor.
    
    Signed-off-by: Ross Brown <[email protected]>
    Signed-off-by: Eugene Shalygin <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Guenter Roeck <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
Linux: Linux 6.6.53 [+ + +]
Author: Greg Kroah-Hartman <[email protected]>
Date:   Mon Sep 30 16:25:15 2024 +0200

    Linux 6.6.53
    
    Link: https://lore.kernel.org/r/[email protected]
    Tested-by: Peter Schneider <[email protected]>
    Tested-by: Jon Hunter <[email protected]>
    Tested-by: Florian Fainelli <[email protected]>
    Tested-by: Allen Pais <[email protected]>
    Tested-by: Linux Kernel Functional Testing <[email protected]>
    Tested-by: Takeshi Ogasawara <[email protected]>
    Tested-by: Shuah Khan <[email protected]>
    Tested-by: Ron Economos <[email protected]>
    Tested-by: Kexy Biscuit <[email protected]>
    Tested-by: kernelci.org bot <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>

 
LoongArch: Define ARCH_IRQ_INIT_FLAGS as IRQ_NOPROBE [+ + +]
Author: Huacai Chen <[email protected]>
Date:   Mon Aug 26 23:11:32 2024 +0800

    LoongArch: Define ARCH_IRQ_INIT_FLAGS as IRQ_NOPROBE
    
    [ Upstream commit 274ea3563e5ab9f468c15bfb9d2492803a66d9be ]
    
    Currently we call irq_set_noprobe() in a loop for all IRQs, but indeed
    it only works for IRQs below NR_IRQS_LEGACY because at init_IRQ() only
    legacy interrupts have been allocated.
    
    Instead, we can define ARCH_IRQ_INIT_FLAGS as IRQ_NOPROBE in asm/hwirq.h
    and the core will automatically set the flag for all interrupts.
    
    Reviewed-by: Thomas Gleixner <[email protected]>
    Signed-off-by: Huacai Chen <[email protected]>
    Signed-off-by: Tianyang Zhang <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
microblaze: don't treat zero reserved memory regions as error [+ + +]
Author: Mike Rapoport <[email protected]>
Date:   Mon Jul 29 08:33:27 2024 +0300

    microblaze: don't treat zero reserved memory regions as error
    
    [ Upstream commit 0075df288dd8a7abfe03b3766176c393063591dd ]
    
    Before commit 721f4a6526da ("mm/memblock: remove empty dummy entry") the
    check for non-zero of memblock.reserved.cnt in mmu_init() would always
    be true either because  memblock.reserved.cnt is initialized to 1 or
    because there were memory reservations earlier.
    
    The removal of dummy empty entry in memblock caused this check to fail
    because now memblock.reserved.cnt is initialized to 0.
    
    Remove the check for non-zero of memblock.reserved.cnt because it's
    perfectly fine to have an empty memblock.reserved array that early in
    boot.
    
    Reported-by: Guenter Roeck <[email protected]>
    Signed-off-by: Mike Rapoport <[email protected]>
    Reviewed-by: Wei Yang <[email protected]>
    Tested-by: Guenter Roeck <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Guenter Roeck <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
net: ftgmac100: Ensure tx descriptor updates are visible [+ + +]
Author: Jacky Chou <[email protected]>
Date:   Thu Aug 22 15:30:06 2024 +0800

    net: ftgmac100: Ensure tx descriptor updates are visible
    
    [ Upstream commit 4186c8d9e6af57bab0687b299df10ebd47534a0a ]
    
    The driver must ensure TX descriptor updates are visible
    before updating TX pointer and TX clear pointer.
    
    This resolves TX hangs observed on AST2600 when running
    iperf3.
    
    Signed-off-by: Jacky Chou <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
netfilter: nf_tables: missing iterator type in lookup walk [+ + +]
Author: Pablo Neira Ayuso <[email protected]>
Date:   Tue Sep 17 22:24:44 2024 +0200

    netfilter: nf_tables: missing iterator type in lookup walk
    
    commit efefd4f00c967d00ad7abe092554ffbb70c1a793 upstream.
    
    Add missing decorator type to lookup expression and tighten WARN_ON_ONCE
    check in pipapo to spot earlier that this is unset.
    
    Fixes: 29b359cf6d95 ("netfilter: nft_set_pipapo: walk over current view on netlink dump")
    Signed-off-by: Pablo Neira Ayuso <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>

netfilter: nft_set_pipapo: walk over current view on netlink dump [+ + +]
Author: Pablo Neira Ayuso <[email protected]>
Date:   Tue Sep 17 22:24:43 2024 +0200

    netfilter: nft_set_pipapo: walk over current view on netlink dump
    
    commit 29b359cf6d95fd60730533f7f10464e95bd17c73 upstream.
    
    The generation mask can be updated while netlink dump is in progress.
    The pipapo set backend walk iterator cannot rely on it to infer what
    view of the datastructure is to be used. Add notation to specify if user
    wants to read/update the set.
    
    Based on patch from Florian Westphal.
    
    Fixes: 2b84e215f874 ("netfilter: nft_set_pipapo: .walk does not deal with generations")
    Signed-off-by: Pablo Neira Ayuso <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>

netfilter: nft_socket: Fix a NULL vs IS_ERR() bug in nft_socket_cgroup_subtree_level() [+ + +]
Author: Dan Carpenter <[email protected]>
Date:   Sat Sep 14 12:56:51 2024 +0300

    netfilter: nft_socket: Fix a NULL vs IS_ERR() bug in nft_socket_cgroup_subtree_level()
    
    commit 7052622fccb1efb850c6b55de477f65d03525a30 upstream.
    
    The cgroup_get_from_path() function never returns NULL, it returns error
    pointers.  Update the error handling to match.
    
    Fixes: 7f3287db6543 ("netfilter: nft_socket: make cgroupsv2 matching work with namespaces")
    Signed-off-by: Dan Carpenter <[email protected]>
    Acked-by: Florian Westphal <[email protected]>
    Acked-by: Pablo Neira Ayuso <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>

netfilter: nft_socket: make cgroupsv2 matching work with namespaces [+ + +]
Author: Florian Westphal <[email protected]>
Date:   Sat Sep 7 16:07:49 2024 +0200

    netfilter: nft_socket: make cgroupsv2 matching work with namespaces
    
    commit 7f3287db654395f9c5ddd246325ff7889f550286 upstream.
    
    When running in container environmment, /sys/fs/cgroup/ might not be
    the real root node of the sk-attached cgroup.
    
    Example:
    
    In container:
    % stat /sys//fs/cgroup/
    Device: 0,21    Inode: 2214  ..
    % stat /sys/fs/cgroup/foo
    Device: 0,21    Inode: 2264  ..
    
    The expectation would be for:
    
      nft add rule .. socket cgroupv2 level 1 "foo" counter
    
    to match traffic from a process that got added to "foo" via
    "echo $pid > /sys/fs/cgroup/foo/cgroup.procs".
    
    However, 'level 3' is needed to make this work.
    
    Seen from initial namespace, the complete hierarchy is:
    
    % stat /sys/fs/cgroup/system.slice/docker-.../foo
      Device: 0,21    Inode: 2264 ..
    
    i.e. hierarchy is
    0    1               2              3
    / -> system.slice -> docker-1... -> foo
    
    ... but the container doesn't know that its "/" is the "docker-1.."
    cgroup.  Current code will retrieve the 'system.slice' cgroup node
    and store its kn->id in the destination register, so compare with
    2264 ("foo" cgroup id) will not match.
    
    Fetch "/" cgroup from ->init() and add its level to the level we try to
    extract.  cgroup root-level is 0 for the init-namespace or the level
    of the ancestor that is exposed as the cgroup root inside the container.
    
    In the above case, cgrp->level of "/" resolved in the container is 2
    (docker-1...scope/) and request for 'level 1' will get adjusted
    to fetch the actual level (3).
    
    v2: use CONFIG_SOCK_CGROUP_DATA, eval function depends on it.
        (kernel test robot)
    
    Cc: [email protected]
    Fixes: e0bb96db96f8 ("netfilter: nft_socket: add support for cgroupsv2")
    Reported-by: Nadia Pinaeva <[email protected]>
    Signed-off-by: Florian Westphal <[email protected]>
    Signed-off-by: Pablo Neira Ayuso <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>

 
nvme-pci: qdepth 1 quirk [+ + +]
Author: Keith Busch <[email protected]>
Date:   Wed Sep 11 10:39:59 2024 -0700

    nvme-pci: qdepth 1 quirk
    
    commit 83bdfcbdbe5d901c5fa432decf12e1725a840a56 upstream.
    
    Another device has been reported to be unreliable if we have more than
    one outstanding command. In this new case, data corruption may occur.
    Since we have two devices now needing this quirky behavior, make a
    generic quirk flag.
    
    The same Apple quirk is clearly not "temporary", so update the comment
    while moving it.
    
    Link: https://lore.kernel.org/linux-nvme/[email protected]/
    Reported-by: Robert Beckett <[email protected]>
    Reviewed-by: Christoph Hellwig [email protected]>
    Signed-off-by: Keith Busch <[email protected]>
    Cc: "Gagniuc, Alexandru" <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>

 
ocfs2: add bounds checking to ocfs2_xattr_find_entry() [+ + +]
Author: Ferry Meng <[email protected]>
Date:   Mon May 20 10:40:23 2024 +0800

    ocfs2: add bounds checking to ocfs2_xattr_find_entry()
    
    [ Upstream commit 9e3041fecdc8f78a5900c3aa51d3d756e73264d6 ]
    
    Add a paranoia check to make sure it doesn't stray beyond valid memory
    region containing ocfs2 xattr entries when scanning for a match.  It will
    prevent out-of-bound access in case of crafted images.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Signed-off-by: Ferry Meng <[email protected]>
    Signed-off-by: Joseph Qi <[email protected]>
    Reported-by: lei lu <[email protected]>
    Reviewed-by: Joseph Qi <[email protected]>
    Cc: Mark Fasheh <[email protected]>
    Cc: Joel Becker <[email protected]>
    Cc: Junxiao Bi <[email protected]>
    Cc: Changwei Ge <[email protected]>
    Cc: Gang He <[email protected]>
    Cc: Jun Piao <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Stable-dep-of: af77c4fc1871 ("ocfs2: strict bound check before memcmp in ocfs2_xattr_find_entry()")
    Signed-off-by: Sasha Levin <[email protected]>

ocfs2: strict bound check before memcmp in ocfs2_xattr_find_entry() [+ + +]
Author: Ferry Meng <[email protected]>
Date:   Mon May 20 10:40:24 2024 +0800

    ocfs2: strict bound check before memcmp in ocfs2_xattr_find_entry()
    
    [ Upstream commit af77c4fc1871847b528d58b7fdafb4aa1f6a9262 ]
    
    xattr in ocfs2 maybe 'non-indexed', which saved with additional space
    requested.  It's better to check if the memory is out of bound before
    memcmp, although this possibility mainly comes from crafted poisonous
    images.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Signed-off-by: Ferry Meng <[email protected]>
    Signed-off-by: Joseph Qi <[email protected]>
    Reported-by: lei lu <[email protected]>
    Reviewed-by: Joseph Qi <[email protected]>
    Cc: Changwei Ge <[email protected]>
    Cc: Gang He <[email protected]>
    Cc: Joel Becker <[email protected]>
    Cc: Jun Piao <[email protected]>
    Cc: Junxiao Bi <[email protected]>
    Cc: Mark Fasheh <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
pinctrl: at91: make it work with current gpiolib [+ + +]
Author: Thomas Blocher <[email protected]>
Date:   Wed Jul 31 01:16:26 2024 +0200

    pinctrl: at91: make it work with current gpiolib
    
    [ Upstream commit 752f387faaae0ae2e84d3f496922524785e77d60 ]
    
    pinctrl-at91 currently does not support the gpio-groups devicetree
    property and has no pin-range.
    Because of this at91 gpios stopped working since patch
    commit 2ab73c6d8323fa1e ("gpio: Support GPIO controllers without pin-ranges")
    This was discussed in the patches
    commit fc328a7d1fcce263 ("gpio: Revert regression in sysfs-gpio (gpiolib.c)")
    commit 56e337f2cf132632 ("Revert "gpio: Revert regression in sysfs-gpio (gpiolib.c)"")
    
    As a workaround manually set pin-range via gpiochip_add_pin_range() until
    a) pinctrl-at91 is reworked to support devicetree gpio-groups
    b) another solution as mentioned in
    commit 56e337f2cf132632 ("Revert "gpio: Revert regression in sysfs-gpio (gpiolib.c)"")
    is found
    
    Signed-off-by: Thomas Blocher <[email protected]>
    Link: https://lore.kernel.org/[email protected]
    Signed-off-by: Linus Walleij <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
platform/x86: x86-android-tablets: Make Lenovo Yoga Tab 3 X90F DMI match less strict [+ + +]
Author: Hans de Goede <[email protected]>
Date:   Sun Aug 25 15:24:15 2024 +0200

    platform/x86: x86-android-tablets: Make Lenovo Yoga Tab 3 X90F DMI match less strict
    
    [ Upstream commit a3379eca24a7da5118a7d090da6f8eb8611acac8 ]
    
    There are 2G and 4G RAM versions of the Lenovo Yoga Tab 3 X90F and it
    turns out that the 2G version has a DMI product name of
    "CHERRYVIEW D1 PLATFORM" where as the 4G version has
    "CHERRYVIEW C0 PLATFORM". The sys-vendor + product-version check are
    unique enough that the product-name check is not necessary.
    
    Drop the product-name check so that the existing DMI match for the 4G
    RAM version also matches the 2G RAM version.
    
    Signed-off-by: Hans de Goede <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Reviewed-by: Ilpo Järvinen <[email protected]>
    Signed-off-by: Ilpo Järvinen <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
powercap/intel_rapl: Add support for AMD family 1Ah [+ + +]
Author: Dhananjay Ugwekar <[email protected]>
Date:   Fri Jul 19 10:12:35 2024 +0000

    powercap/intel_rapl: Add support for AMD family 1Ah
    
    [ Upstream commit 166df51097a258a14fe9e946e2157f3b75eeb3c2 ]
    
    AMD Family 1Ah's RAPL MSRs are identical to Family 19h's,
    extend Family 19h's support to Family 1Ah.
    
    Signed-off-by: Dhananjay Ugwekar <[email protected]>
    Reviewed-by: Gautham R. Shenoy <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Rafael J. Wysocki <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
Revert "wifi: cfg80211: check wiphy mutex is held for wdev mutex" [+ + +]
Author: Ping-Ke Shih <[email protected]>
Date:   Thu Sep 26 08:30:17 2024 +0800

    Revert "wifi: cfg80211: check wiphy mutex is held for wdev mutex"
    
    This reverts commit 268f84a827534c4e4c2540a4e29daa73359fc0a5 which is
    commmit 1474bc87fe57deac726cc10203f73daa6c3212f7 upstream.
    
    The reverted commit is based on implementation of wiphy locking that isn't
    planned to redo on a stable kernel, so revert it to avoid warning:
    
     WARNING: CPU: 0 PID: 9 at net/wireless/core.h:231 disconnect_work+0xb8/0x144 [cfg80211]
     CPU: 0 PID: 9 Comm: kworker/0:1 Not tainted 6.6.51-00141-ga1649b6f8ed6 #7
     Hardware name: Freescale i.MX6 SoloX (Device Tree)
     Workqueue: events disconnect_work [cfg80211]
      unwind_backtrace from show_stack+0x10/0x14
      show_stack from dump_stack_lvl+0x58/0x70
      dump_stack_lvl from __warn+0x70/0x1c0
      __warn from warn_slowpath_fmt+0x16c/0x294
      warn_slowpath_fmt from disconnect_work+0xb8/0x144 [cfg80211]
      disconnect_work [cfg80211] from process_one_work+0x204/0x620
      process_one_work from worker_thread+0x1b0/0x474
      worker_thread from kthread+0x10c/0x12c
      kthread from ret_from_fork+0x14/0x24
    
    Reported-by: [email protected]
    Closes: https://lore.kernel.org/linux-wireless/[email protected]/T/#t
    Cc: Johannes Berg <[email protected]>
    Signed-off-by: Ping-Ke Shih <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>

 
scsi: lpfc: Fix overflow build issue [+ + +]
Author: Sherry Yang <[email protected]>
Date:   Tue Aug 20 23:51:31 2024 -0700

    scsi: lpfc: Fix overflow build issue
    
    [ Upstream commit 3417c9574e368f0330637505f00d3814ca8854d2 ]
    
    Build failed while enabling "CONFIG_GCOV_KERNEL=y" and
    "CONFIG_GCOV_PROFILE_ALL=y" with following error:
    
    BUILDSTDERR: drivers/scsi/lpfc/lpfc_bsg.c: In function 'lpfc_get_cgnbuf_info':
    BUILDSTDERR: ./include/linux/fortify-string.h:114:33: error: '__builtin_memcpy' accessing 18446744073709551615 bytes at offsets 0 and 0 overlaps 9223372036854775807 bytes at offset -9223372036854775808 [-Werror=restrict]
    BUILDSTDERR:   114 | #define __underlying_memcpy     __builtin_memcpy
    BUILDSTDERR:       |                                 ^
    BUILDSTDERR: ./include/linux/fortify-string.h:637:9: note: in expansion of macro '__underlying_memcpy'
    BUILDSTDERR:   637 |         __underlying_##op(p, q, __fortify_size);                        \
    BUILDSTDERR:       |         ^~~~~~~~~~~~~
    BUILDSTDERR: ./include/linux/fortify-string.h:682:26: note: in expansion of macro '__fortify_memcpy_chk'
    BUILDSTDERR:   682 | #define memcpy(p, q, s)  __fortify_memcpy_chk(p, q, s,                  \
    BUILDSTDERR:       |                          ^~~~~~~~~~~~~~~~~~~~
    BUILDSTDERR: drivers/scsi/lpfc/lpfc_bsg.c:5468:9: note: in expansion of macro 'memcpy'
    BUILDSTDERR:  5468 |         memcpy(cgn_buff, cp, cinfosz);
    BUILDSTDERR:       |         ^~~~~~
    
    This happens from the commit 06bb7fc0feee ("kbuild: turn on -Wrestrict by
    default"). Address this issue by using size_t type.
    
    Signed-off-by: Sherry Yang <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Reviewed-by: Justin Tee <[email protected]>
    Signed-off-by: Martin K. Petersen <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
smb: client: fix hang in wait_for_response() for negproto [+ + +]
Author: Paulo Alcantara <[email protected]>
Date:   Sat Aug 31 21:40:28 2024 -0300

    smb: client: fix hang in wait_for_response() for negproto
    
    [ Upstream commit 7ccc1465465d78e6411b7bd730d06e7435802b5c ]
    
    Call cifs_reconnect() to wake up processes waiting on negotiate
    protocol to handle the case where server abruptly shut down and had no
    chance to properly close the socket.
    
    Simple reproducer:
    
      ssh 192.168.2.100 pkill -STOP smbd
      mount.cifs //192.168.2.100/test /mnt -o ... [never returns]
    
    Cc: Rickard Andersson <[email protected]>
    Signed-off-by: Paulo Alcantara (Red Hat) <[email protected]>
    Signed-off-by: Steve French <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
spi: bcm63xx: Enable module autoloading [+ + +]
Author: Liao Chen <[email protected]>
Date:   Sat Aug 31 09:42:31 2024 +0000

    spi: bcm63xx: Enable module autoloading
    
    [ Upstream commit 709df70a20e990d262c473ad9899314039e8ec82 ]
    
    Add MODULE_DEVICE_TABLE(), so modules could be properly autoloaded based
    on the alias from of_device_id table.
    
    Signed-off-by: Liao Chen <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

spi: spidev: Add an entry for elgin,jg10309-01 [+ + +]
Author: Fabio Estevam <[email protected]>
Date:   Wed Aug 28 15:00:56 2024 -0300

    spi: spidev: Add an entry for elgin,jg10309-01
    
    [ Upstream commit 5f3eee1eef5d0edd23d8ac0974f56283649a1512 ]
    
    The rv1108-elgin-r1 board has an LCD controlled via SPI in userspace.
    The marking on the LCD is JG10309-01.
    
    Add the "elgin,jg10309-01" compatible string.
    
    Signed-off-by: Fabio Estevam <[email protected]>
    Reviewed-by: Heiko Stuebner <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

spi: spidev: Add missing spi_device_id for jg10309-01 [+ + +]
Author: Geert Uytterhoeven <[email protected]>
Date:   Tue Sep 3 14:32:27 2024 +0200

    spi: spidev: Add missing spi_device_id for jg10309-01
    
    [ Upstream commit 5478a4f7b94414def7b56d2f18bc2ed9b0f3f1f2 ]
    
    When the of_device_id entry for "elgin,jg10309-01" was added, the
    corresponding spi_device_id was forgotten, causing a warning message
    during boot-up:
    
        SPI driver spidev has no spi_device_id for elgin,jg10309-01
    
    Fix module autoloading and shut up the warning by adding the missing
    entry.
    
    Fixes: 5f3eee1eef5d0edd ("spi: spidev: Add an entry for elgin,jg10309-01")
    Signed-off-by: Geert Uytterhoeven <[email protected]>
    Link: https://patch.msgid.link/54bbb9d8a8db7e52d13e266f2d4a9bcd8b42a98a.1725366625.git.geert+renesas@glider.be
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
tools: hv: rm .*.cmd when make clean [+ + +]
Author: zhang jiao <[email protected]>
Date:   Mon Sep 2 12:21:03 2024 +0800

    tools: hv: rm .*.cmd when make clean
    
    [ Upstream commit 5e5cc1eb65256e6017e3deec04f9806f2f317853 ]
    
    rm .*.cmd when make clean
    
    Signed-off-by: zhang jiao <[email protected]>
    Reviewed-by: Saurabh Sengar <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Wei Liu <[email protected]>
    Message-ID: <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
USB: serial: pl2303: add device id for Macrosilicon MS3020 [+ + +]
Author: Junhao Xie <[email protected]>
Date:   Tue Sep 3 23:06:38 2024 +0800

    USB: serial: pl2303: add device id for Macrosilicon MS3020
    
    commit 7d47d22444bb7dc1b6d768904a22070ef35e1fc0 upstream.
    
    Add the device id for the Macrosilicon MS3020 which is a
    PL2303HXN based device.
    
    Signed-off-by: Junhao Xie <[email protected]>
    Cc: [email protected]
    Signed-off-by: Johan Hovold <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>

USB: usbtmc: prevent kernel-usb-infoleak [+ + +]
Author: Edward Adam Davis <[email protected]>
Date:   Sun Sep 8 17:17:41 2024 +0800

    USB: usbtmc: prevent kernel-usb-infoleak
    
    commit 625fa77151f00c1bd00d34d60d6f2e710b3f9aad upstream.
    
    The syzbot reported a kernel-usb-infoleak in usbtmc_write,
    we need to clear the structure before filling fields.
    
    Fixes: 4ddc645f40e9 ("usb: usbtmc: Add ioctl for vendor specific write")
    Reported-and-tested-by: [email protected]
    Closes: https://syzkaller.appspot.com/bug?extid=9d34f80f841e948c3fdb
    Signed-off-by: Edward Adam Davis <[email protected]>
    Cc: stable <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Greg Kroah-Hartman <[email protected]>

 
wifi: iwlwifi: clear trans->state earlier upon error [+ + +]
Author: Emmanuel Grumbach <[email protected]>
Date:   Sun Aug 25 19:17:01 2024 +0300

    wifi: iwlwifi: clear trans->state earlier upon error
    
    [ Upstream commit 094513f8a2fbddee51b055d8035f995551f98fce ]
    
    When the firmware crashes, we first told the op_mode and only then,
    changed the transport's state. This is a problem if the op_mode's
    nic_error() handler needs to send a host command: it'll see that the
    transport's state still reflects that the firmware is alive.
    
    Today, this has no consequences since we set the STATUS_FW_ERROR bit and
    that will prevent sending host commands. iwl_fw_dbg_stop_restart_recording
    looks at this bit to know not to send a host command for example.
    
    To fix the hibernation, we needed to reset the firmware without having
    an error and checking STATUS_FW_ERROR to see whether the firmware is
    alive will no longer hold, so this change is necessary as well.
    
    Change the flow a bit.
    Change trans->state before calling the op_mode's nic_error() method and
    check trans->state instead of STATUS_FW_ERROR. This will keep the
    current behavior of iwl_fw_dbg_stop_restart_recording upon firmware
    error, and it'll allow us to call iwl_fw_dbg_stop_restart_recording
    safely even if STATUS_FW_ERROR is clear, but yet, the firmware is not
    alive.
    
    Signed-off-by: Emmanuel Grumbach <[email protected]>
    Signed-off-by: Miri Korenblit <[email protected]>
    Link: https://patch.msgid.link/20240825191257.9d7427fbdfd7.Ia056ca57029a382c921d6f7b6a6b28fc480f2f22@changeid
    [I missed this was a dependency for the hibernation fix, changed
     the commit message a bit accordingly]
    Signed-off-by: Johannes Berg <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

wifi: iwlwifi: lower message level for FW buffer destination [+ + +]
Author: Benjamin Berg <[email protected]>
Date:   Sun Aug 25 19:17:13 2024 +0300

    wifi: iwlwifi: lower message level for FW buffer destination
    
    [ Upstream commit f8a129c1e10256c785164ed5efa5d17d45fbd81b ]
    
    An invalid buffer destination is not a problem for the driver and it
    does not make sense to report it with the KERN_ERR message level. As
    such, change the message to use IWL_DEBUG_FW.
    
    Reported-by: Len Brown <[email protected]>
    Closes: https://lore.kernel.org/r/CAJvTdKkcxJss=DM2sxgv_MR5BeZ4_OC-3ad6tA40TYH2yqHCWw@mail.gmail.com
    Signed-off-by: Benjamin Berg <[email protected]>
    Signed-off-by: Miri Korenblit <[email protected]>
    Link: https://patch.msgid.link/20240825191257.20abf78f05bc.Ifbcecc2ae9fb40b9698302507dcba8b922c8d856@changeid
    Signed-off-by: Johannes Berg <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

wifi: iwlwifi: mvm: don't wait for tx queues if firmware is dead [+ + +]
Author: Emmanuel Grumbach <[email protected]>
Date:   Sun Aug 25 19:17:04 2024 +0300

    wifi: iwlwifi: mvm: don't wait for tx queues if firmware is dead
    
    [ Upstream commit 3a84454f5204718ca5b4ad2c1f0bf2031e2403d1 ]
    
    There is a WARNING in iwl_trans_wait_tx_queues_empty() (that was
    recently converted from just a message), that can be hit if we
    wait for TX queues to become empty after firmware died. Clearly,
    we can't expect anything from the firmware after it's declared dead.
    
    Don't call iwl_trans_wait_tx_queues_empty() in this case. While it could
    be a good idea to stop the flow earlier, the flush functions do some
    maintenance work that is not related to the firmware, so keep that part
    of the code running even when the firmware is not running.
    
    Signed-off-by: Emmanuel Grumbach <[email protected]>
    Signed-off-by: Miri Korenblit <[email protected]>
    Link: https://patch.msgid.link/20240825191257.a7cbd794cee9.I44a739fbd4ffcc46b83844dd1c7b2eb0c7b270f6@changeid
    [edit commit message]
    Signed-off-by: Johannes Berg <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

wifi: iwlwifi: mvm: fix iwl_mvm_max_scan_ie_fw_cmd_room() [+ + +]
Author: Daniel Gabay <[email protected]>
Date:   Sun Aug 25 19:17:06 2024 +0300

    wifi: iwlwifi: mvm: fix iwl_mvm_max_scan_ie_fw_cmd_room()
    
    [ Upstream commit 916a5d9c5354c426220a0a6533a5e8ea1287d6ea ]
    
    Driver creates also the WFA TPC element, consider that in the
    calculation.
    
    Signed-off-by: Daniel Gabay <[email protected]>
    Reviewed-by: Ilan Peer <[email protected]>
    Signed-off-by: Miri Korenblit <[email protected]>
    Link: https://patch.msgid.link/20240825191257.e710ce446b7f.I2715c6742e9c3d160e2ba41bc4b35de370d2ce34@changeid
    Signed-off-by: Johannes Berg <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

wifi: iwlwifi: mvm: fix iwl_mvm_scan_fits() calculation [+ + +]
Author: Daniel Gabay <[email protected]>
Date:   Sun Aug 25 19:17:05 2024 +0300

    wifi: iwlwifi: mvm: fix iwl_mvm_scan_fits() calculation
    
    [ Upstream commit d44162280899c3fc2c6700e21e491e71c3c96e3d ]
    
    The calculation should consider also the 6GHz IE's len, fix that.
    In addition, in iwl_mvm_sched_scan_start() the scan_fits helper is
    called only in case non_psc_incldued is true, but it should be called
    regardless, fix that as well.
    
    Signed-off-by: Daniel Gabay <[email protected]>
    Reviewed-by: Ilan Peer <[email protected]>
    Signed-off-by: Miri Korenblit <[email protected]>
    Link: https://patch.msgid.link/20240825191257.7db825442fd2.I99f4d6587709de02072fd57957ec7472331c6b1d@changeid
    Signed-off-by: Johannes Berg <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

wifi: iwlwifi: mvm: pause TCM when the firmware is stopped [+ + +]
Author: Emmanuel Grumbach <[email protected]>
Date:   Sun Aug 25 19:17:10 2024 +0300

    wifi: iwlwifi: mvm: pause TCM when the firmware is stopped
    
    [ Upstream commit 0668ebc8c2282ca1e7eb96092a347baefffb5fe7 ]
    
    Not doing so will make us send a host command to the transport while the
    firmware is not alive, which will trigger a WARNING.
    
    bad state = 0
    WARNING: CPU: 2 PID: 17434 at drivers/net/wireless/intel/iwlwifi/iwl-trans.c:115 iwl_trans_send_cmd+0x1cb/0x1e0 [iwlwifi]
    RIP: 0010:iwl_trans_send_cmd+0x1cb/0x1e0 [iwlwifi]
    Call Trace:
     <TASK>
     iwl_mvm_send_cmd+0x40/0xc0 [iwlmvm]
     iwl_mvm_config_scan+0x198/0x260 [iwlmvm]
     iwl_mvm_recalc_tcm+0x730/0x11d0 [iwlmvm]
     iwl_mvm_tcm_work+0x1d/0x30 [iwlmvm]
     process_one_work+0x29e/0x640
     worker_thread+0x2df/0x690
     ? rescuer_thread+0x540/0x540
     kthread+0x192/0x1e0
     ? set_kthread_struct+0x90/0x90
     ret_from_fork+0x22/0x30
    
    Signed-off-by: Emmanuel Grumbach <[email protected]>
    Signed-off-by: Miri Korenblit <[email protected]>
    Link: https://patch.msgid.link/20240825191257.5abe71ca1b6b.I97a968cb8be1f24f94652d9b110ecbf6af73f89e@changeid
    Signed-off-by: Johannes Berg <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

wifi: mac80211: free skb on error path in ieee80211_beacon_get_ap() [+ + +]
Author: Dmitry Antipov <[email protected]>
Date:   Mon Aug 5 17:20:35 2024 +0300

    wifi: mac80211: free skb on error path in ieee80211_beacon_get_ap()
    
    [ Upstream commit 786c5be9ac29a39b6f37f1fdd2ea59d0fe35d525 ]
    
    In 'ieee80211_beacon_get_ap()', free allocated skb in case of error
    returned by 'ieee80211_beacon_protect()'. Compile tested only.
    
    Signed-off-by: Dmitry Antipov <[email protected]>
    Link: https://patch.msgid.link/[email protected]
    Signed-off-by: Johannes Berg <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
x86/hyperv: Set X86_FEATURE_TSC_KNOWN_FREQ when Hyper-V provides frequency [+ + +]
Author: Michael Kelley <[email protected]>
Date:   Wed Jun 5 19:55:59 2024 -0700

    x86/hyperv: Set X86_FEATURE_TSC_KNOWN_FREQ when Hyper-V provides frequency
    
    [ Upstream commit 8fcc514809de41153b43ccbe1a0cdf7f72b78e7e ]
    
    A Linux guest on Hyper-V gets the TSC frequency from a synthetic MSR, if
    available. In this case, set X86_FEATURE_TSC_KNOWN_FREQ so that Linux
    doesn't unnecessarily do refined TSC calibration when setting up the TSC
    clocksource.
    
    With this change, a message such as this is no longer output during boot
    when the TSC is used as the clocksource:
    
    [    1.115141] tsc: Refined TSC clocksource calibration: 2918.408 MHz
    
    Furthermore, the guest and host will have exactly the same view of the
    TSC frequency, which is important for features such as the TSC deadline
    timer that are emulated by the Hyper-V host.
    
    Signed-off-by: Michael Kelley <[email protected]>
    Reviewed-by: Roman Kisel <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Wei Liu <[email protected]>
    Message-ID: <[email protected]>
    Signed-off-by: Sasha Levin <[email protected]>

 
x86/mm: Switch to new Intel CPU model defines [+ + +]
Author: Tony Luck <[email protected]>
Date:   Wed Apr 24 11:15:18 2024 -0700

    x86/mm: Switch to new Intel CPU model defines
    
    commit 2eda374e883ad297bd9fe575a16c1dc850346075 upstream.
    
    New CPU #defines encode vendor and family as well as model.
    
    [ dhansen: vertically align 0's in invlpg_miss_ids[] ]
    
    Signed-off-by: Tony Luck <[email protected]>
    Signed-off-by: Dave Hansen <[email protected]>
    Signed-off-by: Borislav Petkov (AMD) <[email protected]>
    Link: https://lore.kernel.org/all/20240424181518.41946-1-tony.luck%40intel.com
    [ Ricardo: I used the old match macro X86_MATCH_INTEL_FAM6_MODEL()
      instead of X86_MATCH_VFM() as in the upstream commit. ]
    Signed-off-by: Ricardo Neri <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>