From: Sasha Levin Date: Mon, 27 Jan 2025 17:05:00 +0000 (-0500) Subject: Fixes for 6.6 X-Git-Tag: v6.13.1~48 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9b79f34013133a0f489750e989a10cf3572e1bda;p=thirdparty%2Fkernel%2Fstable-queue.git Fixes for 6.6 Signed-off-by: Sasha Levin --- diff --git a/queue-6.6/asoc-samsung-add-missing-depends-on-i2c.patch b/queue-6.6/asoc-samsung-add-missing-depends-on-i2c.patch new file mode 100644 index 0000000000..8ab8663832 --- /dev/null +++ b/queue-6.6/asoc-samsung-add-missing-depends-on-i2c.patch @@ -0,0 +1,49 @@ +From bd3e10d0971e4ed567311bb35a31d32ae503eb6f Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 8 Jan 2025 13:48:28 +0000 +Subject: ASoC: samsung: Add missing depends on I2C + +From: Charles Keepax + +[ Upstream commit 704dbe97a68153a84319ad63f526e12ba868b88e ] + +When switching to selects for MFD_WM8994 a dependency should have also +been added for I2C, as the dependency on MFD_WM8994 will not be +considered by the select. + +Fixes: fd55c6065bec ("ASoC: samsung: Add missing selects for MFD_WM8994") +Reported-by: kernel test robot +Closes: https://lore.kernel.org/oe-kbuild-all/202501082020.2bpGGVTW-lkp@intel.com/ +Signed-off-by: Charles Keepax +Link: https://patch.msgid.link/20250108134828.246570-1-ckeepax@opensource.cirrus.com +Signed-off-by: Mark Brown +Signed-off-by: Sasha Levin +--- + sound/soc/samsung/Kconfig | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/sound/soc/samsung/Kconfig b/sound/soc/samsung/Kconfig +index 77d3beea1d715..e8716501685bc 100644 +--- a/sound/soc/samsung/Kconfig ++++ b/sound/soc/samsung/Kconfig +@@ -127,7 +127,7 @@ config SND_SOC_SAMSUNG_TM2_WM5110 + + config SND_SOC_SAMSUNG_ARIES_WM8994 + tristate "SoC I2S Audio support for WM8994 on Aries" +- depends on SND_SOC_SAMSUNG && IIO && EXTCON ++ depends on SND_SOC_SAMSUNG && I2C && IIO && EXTCON + select SND_SOC_BT_SCO + select MFD_WM8994 + select SND_SOC_WM8994 +@@ -141,7 +141,7 @@ config SND_SOC_SAMSUNG_ARIES_WM8994 + + config SND_SOC_SAMSUNG_MIDAS_WM1811 + tristate "SoC I2S Audio support for Midas boards" +- depends on SND_SOC_SAMSUNG ++ depends on SND_SOC_SAMSUNG && I2C + select SND_SAMSUNG_I2S + select MFD_WM8994 + select SND_SOC_WM8994 +-- +2.39.5 + diff --git a/queue-6.6/asoc-samsung-add-missing-selects-for-mfd_wm8994.patch b/queue-6.6/asoc-samsung-add-missing-selects-for-mfd_wm8994.patch new file mode 100644 index 0000000000..3aaa53ebff --- /dev/null +++ b/queue-6.6/asoc-samsung-add-missing-selects-for-mfd_wm8994.patch @@ -0,0 +1,48 @@ +From a56f029ca7a84ab24a5da6b9d9b5c21b02a6e2c8 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Tue, 7 Jan 2025 10:41:34 +0000 +Subject: ASoC: samsung: Add missing selects for MFD_WM8994 + +From: Charles Keepax + +[ Upstream commit fd55c6065bec5268740e944a1800e6fad00974d9 ] + +Anything selecting SND_SOC_WM8994 should also select MFD_WM8994, as +SND_SOC_WM8994 does not automatically do so. Add the missing selects. + +Reported-by: kernel test robot +Closes: https://lore.kernel.org/oe-kbuild-all/202501071530.UwIXs7OL-lkp@intel.com/ +Signed-off-by: Charles Keepax +Link: https://patch.msgid.link/20250107104134.12147-1-ckeepax@opensource.cirrus.com +Signed-off-by: Mark Brown +Signed-off-by: Sasha Levin +--- + sound/soc/samsung/Kconfig | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/sound/soc/samsung/Kconfig b/sound/soc/samsung/Kconfig +index 93c2b1b08d0a6..77d3beea1d715 100644 +--- a/sound/soc/samsung/Kconfig ++++ b/sound/soc/samsung/Kconfig +@@ -127,8 +127,9 @@ config SND_SOC_SAMSUNG_TM2_WM5110 + + config SND_SOC_SAMSUNG_ARIES_WM8994 + tristate "SoC I2S Audio support for WM8994 on Aries" +- depends on SND_SOC_SAMSUNG && MFD_WM8994 && IIO && EXTCON ++ depends on SND_SOC_SAMSUNG && IIO && EXTCON + select SND_SOC_BT_SCO ++ select MFD_WM8994 + select SND_SOC_WM8994 + select SND_SAMSUNG_I2S + help +@@ -142,6 +143,7 @@ config SND_SOC_SAMSUNG_MIDAS_WM1811 + tristate "SoC I2S Audio support for Midas boards" + depends on SND_SOC_SAMSUNG + select SND_SAMSUNG_I2S ++ select MFD_WM8994 + select SND_SOC_WM8994 + help + Say Y if you want to add support for SoC audio on the Midas boards. +-- +2.39.5 + diff --git a/queue-6.6/asoc-wm8994-add-depends-on-mfd-core.patch b/queue-6.6/asoc-wm8994-add-depends-on-mfd-core.patch new file mode 100644 index 0000000000..740d4f529d --- /dev/null +++ b/queue-6.6/asoc-wm8994-add-depends-on-mfd-core.patch @@ -0,0 +1,38 @@ +From 01d050bd39eac85d6b27acd4eb134782ab75821d Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Mon, 6 Jan 2025 15:46:39 +0000 +Subject: ASoC: wm8994: Add depends on MFD core + +From: Charles Keepax + +[ Upstream commit 5ed01155cea69801f1f0c908954a56a5a3474bed ] + +The ASoC driver should not be used without the MFD component. This was +causing randconfig issues with regmap IRQ which is selected by the MFD +part of the wm8994 driver. + +Reported-by: kernel test robot +Closes: https://lore.kernel.org/oe-kbuild-all/202501061337.R0DlBUoD-lkp@intel.com/ +Signed-off-by: Charles Keepax +Link: https://patch.msgid.link/20250106154639.3999553-1-ckeepax@opensource.cirrus.com +Signed-off-by: Mark Brown +Signed-off-by: Sasha Levin +--- + sound/soc/codecs/Kconfig | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig +index f1e1dbc509f6e..6d105a23c8284 100644 +--- a/sound/soc/codecs/Kconfig ++++ b/sound/soc/codecs/Kconfig +@@ -2209,6 +2209,7 @@ config SND_SOC_WM8993 + + config SND_SOC_WM8994 + tristate ++ depends on MFD_WM8994 + + config SND_SOC_WM8995 + tristate +-- +2.39.5 + diff --git a/queue-6.6/drm-amd-display-use-hw-lock-mgr-for-psr1.patch b/queue-6.6/drm-amd-display-use-hw-lock-mgr-for-psr1.patch new file mode 100644 index 0000000000..62e0261969 --- /dev/null +++ b/queue-6.6/drm-amd-display-use-hw-lock-mgr-for-psr1.patch @@ -0,0 +1,43 @@ +From 3c9d47d6e1100d01cebd1c48877c7c9e2879c161 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Tue, 1 Oct 2024 17:13:07 +0800 +Subject: drm/amd/display: Use HW lock mgr for PSR1 + +From: Tom Chung + +[ Upstream commit b5c764d6ed556c4e81fbe3fd976da77ec450c08e ] + +[Why] +Without the dmub hw lock, it may cause the lock timeout issue +while do modeset on PSR1 eDP panel. + +[How] +Allow dmub hw lock for PSR1. + +Reviewed-by: Sun peng Li +Signed-off-by: Tom Chung +Tested-by: Daniel Wheeler +Signed-off-by: Alex Deucher +(cherry picked from commit a2b5a9956269f4c1a09537177f18ab0229fe79f7) +Signed-off-by: Sasha Levin +--- + drivers/gpu/drm/amd/display/dc/dce/dmub_hw_lock_mgr.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/drivers/gpu/drm/amd/display/dc/dce/dmub_hw_lock_mgr.c b/drivers/gpu/drm/amd/display/dc/dce/dmub_hw_lock_mgr.c +index 2aa0e01a6891b..f11b071a896f5 100644 +--- a/drivers/gpu/drm/amd/display/dc/dce/dmub_hw_lock_mgr.c ++++ b/drivers/gpu/drm/amd/display/dc/dce/dmub_hw_lock_mgr.c +@@ -63,7 +63,8 @@ void dmub_hw_lock_mgr_inbox0_cmd(struct dc_dmub_srv *dmub_srv, + + bool should_use_dmub_lock(struct dc_link *link) + { +- if (link->psr_settings.psr_version == DC_PSR_VERSION_SU_1) ++ if (link->psr_settings.psr_version == DC_PSR_VERSION_SU_1 || ++ link->psr_settings.psr_version == DC_PSR_VERSION_1) + return true; + return false; + } +-- +2.39.5 + diff --git a/queue-6.6/hwmon-drivetemp-set-scsi-command-timeout-to-10s.patch b/queue-6.6/hwmon-drivetemp-set-scsi-command-timeout-to-10s.patch new file mode 100644 index 0000000000..aff14bc4e6 --- /dev/null +++ b/queue-6.6/hwmon-drivetemp-set-scsi-command-timeout-to-10s.patch @@ -0,0 +1,40 @@ +From 0d28db6d35911eccd740577e7e45982823fbe362 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 15 Jan 2025 05:13:41 -0800 +Subject: hwmon: (drivetemp) Set scsi command timeout to 10s + +From: Russell Harmon + +[ Upstream commit b46ba47d7bb461a0969317be1f2e165c0571d6c5 ] + +There's at least one drive (MaxDigitalData OOS14000G) such that if it +receives a large amount of I/O while entering an idle power state will +first exit idle before responding, including causing SMART temperature +requests to be delayed. + +This causes the drivetemp request to exceed its timeout of 1 second. + +Signed-off-by: Russell Harmon +Link: https://lore.kernel.org/r/20250115131340.3178988-1-russ@har.mn +Signed-off-by: Guenter Roeck +Signed-off-by: Sasha Levin +--- + drivers/hwmon/drivetemp.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/drivers/hwmon/drivetemp.c b/drivers/hwmon/drivetemp.c +index 2a4ec55ddb47e..291d91f686467 100644 +--- a/drivers/hwmon/drivetemp.c ++++ b/drivers/hwmon/drivetemp.c +@@ -194,7 +194,7 @@ static int drivetemp_scsi_command(struct drivetemp_data *st, + scsi_cmd[14] = ata_command; + + err = scsi_execute_cmd(st->sdev, scsi_cmd, op, st->smartdata, +- ATA_SECT_SIZE, HZ, 5, NULL); ++ ATA_SECT_SIZE, 10 * HZ, 5, NULL); + if (err > 0) + err = -EIO; + return err; +-- +2.39.5 + diff --git a/queue-6.6/irqchip-sunxi-nmi-add-missing-skip_wake-flag.patch b/queue-6.6/irqchip-sunxi-nmi-add-missing-skip_wake-flag.patch new file mode 100644 index 0000000000..268b41b793 --- /dev/null +++ b/queue-6.6/irqchip-sunxi-nmi-add-missing-skip_wake-flag.patch @@ -0,0 +1,44 @@ +From f609672df96b1dd0cce880461ed3575d8eae6f8f Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Sun, 12 Jan 2025 13:34:02 +0100 +Subject: irqchip/sunxi-nmi: Add missing SKIP_WAKE flag + +From: Philippe Simons + +[ Upstream commit 3a748d483d80f066ca4b26abe45cdc0c367d13e9 ] + +Some boards with Allwinner SoCs connect the PMIC's IRQ pin to the SoC's NMI +pin instead of a normal GPIO. Since the power key is connected to the PMIC, +and people expect to wake up a suspended system via this key, the NMI IRQ +controller must stay alive when the system goes into suspend. + +Add the SKIP_WAKE flag to prevent the sunxi NMI controller from going to +sleep, so that the power key can wake up those systems. + +[ tglx: Fixed up coding style ] + +Signed-off-by: Philippe Simons +Signed-off-by: Thomas Gleixner +Link: https://lore.kernel.org/all/20250112123402.388520-1-simons.philippe@gmail.com +Signed-off-by: Sasha Levin +--- + drivers/irqchip/irq-sunxi-nmi.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/drivers/irqchip/irq-sunxi-nmi.c b/drivers/irqchip/irq-sunxi-nmi.c +index e760b1278143d..262b625c30c10 100644 +--- a/drivers/irqchip/irq-sunxi-nmi.c ++++ b/drivers/irqchip/irq-sunxi-nmi.c +@@ -186,7 +186,8 @@ static int __init sunxi_sc_nmi_irq_init(struct device_node *node, + gc->chip_types[0].chip.irq_unmask = irq_gc_mask_set_bit; + gc->chip_types[0].chip.irq_eoi = irq_gc_ack_set_bit; + gc->chip_types[0].chip.irq_set_type = sunxi_sc_nmi_set_type; +- gc->chip_types[0].chip.flags = IRQCHIP_EOI_THREADED | IRQCHIP_EOI_IF_HANDLED; ++ gc->chip_types[0].chip.flags = IRQCHIP_EOI_THREADED | IRQCHIP_EOI_IF_HANDLED | ++ IRQCHIP_SKIP_SET_WAKE; + gc->chip_types[0].regs.ack = reg_offs->pend; + gc->chip_types[0].regs.mask = reg_offs->enable; + gc->chip_types[0].regs.type = reg_offs->ctrl; +-- +2.39.5 + diff --git a/queue-6.6/of-unittest-add-test-that-of_address_to_resource-fai.patch b/queue-6.6/of-unittest-add-test-that-of_address_to_resource-fai.patch new file mode 100644 index 0000000000..fbf66dad17 --- /dev/null +++ b/queue-6.6/of-unittest-add-test-that-of_address_to_resource-fai.patch @@ -0,0 +1,80 @@ +From f7dbdda4deccd145ab275e9abe95cec69daaeedb Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 10 Jan 2025 15:50:28 -0600 +Subject: of/unittest: Add test that of_address_to_resource() fails on + non-translatable address + +From: Rob Herring (Arm) + +[ Upstream commit 44748065ed321041db6e18cdcaa8c2a9554768ac ] + +of_address_to_resource() on a non-translatable address should return an +error. Additionally, this case also triggers a spurious WARN for +missing #address-cells/#size-cells. + +Link: https://lore.kernel.org/r/20250110215030.3637845-1-robh@kernel.org +Signed-off-by: Rob Herring (Arm) +Signed-off-by: Sasha Levin +--- + drivers/of/unittest-data/tests-platform.dtsi | 13 +++++++++++++ + drivers/of/unittest.c | 14 ++++++++++++++ + 2 files changed, 27 insertions(+) + +diff --git a/drivers/of/unittest-data/tests-platform.dtsi b/drivers/of/unittest-data/tests-platform.dtsi +index fa39611071b32..cd310b26b50c8 100644 +--- a/drivers/of/unittest-data/tests-platform.dtsi ++++ b/drivers/of/unittest-data/tests-platform.dtsi +@@ -34,5 +34,18 @@ dev@100 { + }; + }; + }; ++ ++ platform-tests-2 { ++ // No #address-cells or #size-cells ++ node { ++ #address-cells = <1>; ++ #size-cells = <1>; ++ ++ test-device@100 { ++ compatible = "test-sub-device"; ++ reg = <0x100 1>; ++ }; ++ }; ++ }; + }; + }; +diff --git a/drivers/of/unittest.c b/drivers/of/unittest.c +index 7986113adc7d3..3b22c36bfb0b7 100644 +--- a/drivers/of/unittest.c ++++ b/drivers/of/unittest.c +@@ -1186,6 +1186,7 @@ static void __init of_unittest_bus_3cell_ranges(void) + static void __init of_unittest_reg(void) + { + struct device_node *np; ++ struct resource res; + int ret; + u64 addr, size; + +@@ -1202,6 +1203,19 @@ static void __init of_unittest_reg(void) + np, addr); + + of_node_put(np); ++ ++ np = of_find_node_by_path("/testcase-data/platform-tests-2/node/test-device@100"); ++ if (!np) { ++ pr_err("missing testcase data\n"); ++ return; ++ } ++ ++ ret = of_address_to_resource(np, 0, &res); ++ unittest(ret == -EINVAL, "of_address_to_resource(%pOF) expected error on untranslatable address\n", ++ np); ++ ++ of_node_put(np); ++ + } + + static void __init of_unittest_parse_interrupts(void) +-- +2.39.5 + diff --git a/queue-6.6/scsi-iscsi-fix-redundant-response-for-iscsi_uevent_g.patch b/queue-6.6/scsi-iscsi-fix-redundant-response-for-iscsi_uevent_g.patch new file mode 100644 index 0000000000..ea7cd7990e --- /dev/null +++ b/queue-6.6/scsi-iscsi-fix-redundant-response-for-iscsi_uevent_g.patch @@ -0,0 +1,53 @@ +From 9d91e163f676c395150b59f77537c530887e5e5e Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Tue, 7 Jan 2025 10:24:31 +0800 +Subject: scsi: iscsi: Fix redundant response for ISCSI_UEVENT_GET_HOST_STATS + request + +From: Xiang Zhang + +[ Upstream commit 63ca02221cc5aa0731fe2b0cc28158aaa4b84982 ] + +The ISCSI_UEVENT_GET_HOST_STATS request is already handled in +iscsi_get_host_stats(). This fix ensures that redundant responses are +skipped in iscsi_if_rx(). + + - On success: send reply and stats from iscsi_get_host_stats() + within if_recv_msg(). + + - On error: fall through. + +Signed-off-by: Xiang Zhang +Link: https://lore.kernel.org/r/20250107022432.65390-1-hawkxiang.cpp@gmail.com +Reviewed-by: Mike Christie +Signed-off-by: Martin K. Petersen +Signed-off-by: Sasha Levin +--- + drivers/scsi/scsi_transport_iscsi.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/drivers/scsi/scsi_transport_iscsi.c b/drivers/scsi/scsi_transport_iscsi.c +index 3075b2ddf7a69..deeb657981a69 100644 +--- a/drivers/scsi/scsi_transport_iscsi.c ++++ b/drivers/scsi/scsi_transport_iscsi.c +@@ -4103,7 +4103,7 @@ iscsi_if_rx(struct sk_buff *skb) + } + do { + /* +- * special case for GET_STATS: ++ * special case for GET_STATS, GET_CHAP and GET_HOST_STATS: + * on success - sending reply and stats from + * inside of if_recv_msg(), + * on error - fall through. +@@ -4112,6 +4112,8 @@ iscsi_if_rx(struct sk_buff *skb) + break; + if (ev->type == ISCSI_UEVENT_GET_CHAP && !err) + break; ++ if (ev->type == ISCSI_UEVENT_GET_HOST_STATS && !err) ++ break; + err = iscsi_if_send_reply(portid, nlh->nlmsg_type, + ev, sizeof(*ev)); + if (err == -EAGAIN && --retries < 0) { +-- +2.39.5 + diff --git a/queue-6.6/seccomp-stub-for-config_seccomp.patch b/queue-6.6/seccomp-stub-for-config_seccomp.patch new file mode 100644 index 0000000000..e0d289e333 --- /dev/null +++ b/queue-6.6/seccomp-stub-for-config_seccomp.patch @@ -0,0 +1,50 @@ +From 9791931fe3ebfec3656cf746089cd04bc85778a4 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 8 Jan 2025 23:44:45 +0100 +Subject: seccomp: Stub for !CONFIG_SECCOMP + +From: Linus Walleij + +[ Upstream commit f90877dd7fb5085dd9abd6399daf63dd2969fc90 ] + +When using !CONFIG_SECCOMP with CONFIG_GENERIC_ENTRY, the +randconfig bots found the following snag: + + kernel/entry/common.c: In function 'syscall_trace_enter': +>> kernel/entry/common.c:52:23: error: implicit declaration + of function '__secure_computing' [-Wimplicit-function-declaration] + 52 | ret = __secure_computing(NULL); + | ^~~~~~~~~~~~~~~~~~ + +Since generic entry calls __secure_computing() unconditionally, +fix this by moving the stub out of the ifdef clause for +CONFIG_HAVE_ARCH_SECCOMP_FILTER so it's always available. + +Link: https://lore.kernel.org/oe-kbuild-all/202501061240.Fzk9qiFZ-lkp@intel.com/ +Signed-off-by: Linus Walleij +Link: https://lore.kernel.org/r/20250108-seccomp-stub-2-v2-1-74523d49420f@linaro.org +Signed-off-by: Kees Cook +Signed-off-by: Sasha Levin +--- + include/linux/seccomp.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/include/linux/seccomp.h b/include/linux/seccomp.h +index 175079552f68d..8cf31bb887198 100644 +--- a/include/linux/seccomp.h ++++ b/include/linux/seccomp.h +@@ -70,10 +70,10 @@ struct seccomp_data; + + #ifdef CONFIG_HAVE_ARCH_SECCOMP_FILTER + static inline int secure_computing(void) { return 0; } +-static inline int __secure_computing(const struct seccomp_data *sd) { return 0; } + #else + static inline void secure_computing_strict(int this_syscall) { return; } + #endif ++static inline int __secure_computing(const struct seccomp_data *sd) { return 0; } + + static inline long prctl_get_seccomp(void) + { +-- +2.39.5 + diff --git a/queue-6.6/series b/queue-6.6/series new file mode 100644 index 0000000000..a4aeab3f93 --- /dev/null +++ b/queue-6.6/series @@ -0,0 +1,9 @@ +asoc-wm8994-add-depends-on-mfd-core.patch +asoc-samsung-add-missing-selects-for-mfd_wm8994.patch +seccomp-stub-for-config_seccomp.patch +scsi-iscsi-fix-redundant-response-for-iscsi_uevent_g.patch +drm-amd-display-use-hw-lock-mgr-for-psr1.patch +of-unittest-add-test-that-of_address_to_resource-fai.patch +irqchip-sunxi-nmi-add-missing-skip_wake-flag.patch +hwmon-drivetemp-set-scsi-command-timeout-to-10s.patch +asoc-samsung-add-missing-depends-on-i2c.patch