From: Sasha Levin Date: Wed, 1 Feb 2023 16:41:53 +0000 (-0500) Subject: Fixes for 6.1 X-Git-Tag: v4.14.305~32 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=08ea9036694b16859ce13592cd5955ac30fdd00c;p=thirdparty%2Fkernel%2Fstable-queue.git Fixes for 6.1 Signed-off-by: Sasha Levin --- diff --git a/queue-6.1/acpi-video-add-backlight-native-dmi-quirk-for-acer-a.patch b/queue-6.1/acpi-video-add-backlight-native-dmi-quirk-for-acer-a.patch new file mode 100644 index 00000000000..26227f92633 --- /dev/null +++ b/queue-6.1/acpi-video-add-backlight-native-dmi-quirk-for-acer-a.patch @@ -0,0 +1,45 @@ +From 91d2443f3f15475f39b32d65f04d6d528131081a Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 13 Jan 2023 12:41:26 +0100 +Subject: ACPI: video: Add backlight=native DMI quirk for Acer Aspire 4810T + +From: Hans de Goede + +[ Upstream commit 8ba5fc4c154aeb3b4620f05543cce426c62ed2de ] + +The Acer Aspire 4810T predates Windows 8, so it defaults to using +acpi_video# for backlight control, but this is non functional on +this model. + +Add a DMI quirk to use the native backlight interface which does +work properly. + +Signed-off-by: Hans de Goede +Signed-off-by: Rafael J. Wysocki +Signed-off-by: Sasha Levin +--- + drivers/acpi/video_detect.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/drivers/acpi/video_detect.c b/drivers/acpi/video_detect.c +index 5c32b318c173..b48f85c3791e 100644 +--- a/drivers/acpi/video_detect.c ++++ b/drivers/acpi/video_detect.c +@@ -493,6 +493,14 @@ static const struct dmi_system_id video_detect_dmi_table[] = { + DMI_MATCH(DMI_PRODUCT_NAME, "Precision 7510"), + }, + }, ++ { ++ .callback = video_detect_force_native, ++ /* Acer Aspire 4810T */ ++ .matches = { ++ DMI_MATCH(DMI_SYS_VENDOR, "Acer"), ++ DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 4810T"), ++ }, ++ }, + { + .callback = video_detect_force_native, + /* Acer Aspire 5738z */ +-- +2.39.0 + diff --git a/queue-6.1/arm-dts-imx-fix-pca9547-i2c-mux-node-name.patch b/queue-6.1/arm-dts-imx-fix-pca9547-i2c-mux-node-name.patch new file mode 100644 index 00000000000..861264286e0 --- /dev/null +++ b/queue-6.1/arm-dts-imx-fix-pca9547-i2c-mux-node-name.patch @@ -0,0 +1,43 @@ +From c2af937e65d567ba463d1076b5c4205dcd2f5e0c Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 2 Dec 2022 17:49:18 +0100 +Subject: ARM: dts: imx: Fix pca9547 i2c-mux node name + +From: Geert Uytterhoeven + +[ Upstream commit f78985f9f58380eec37f82c8a2c765aa7670fc29 ] + +"make dtbs_check": + + arch/arm/boot/dts/imx53-ppd.dtb: i2c-switch@70: $nodename:0: 'i2c-switch@70' does not match '^(i2c-?)?mux' + From schema: Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml + arch/arm/boot/dts/imx53-ppd.dtb: i2c-switch@70: Unevaluated properties are not allowed ('#address-cells', '#size-cells', 'i2c@0', 'i2c@1', 'i2c@2', 'i2c@3', 'i2c@4', 'i2c@5', 'i2c@6', 'i2c@7' were unexpected) + From schema: Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml + +Fix this by renaming the PCA9547 node to "i2c-mux", to match the I2C bus +multiplexer/switch DT bindings and the Generic Names Recommendation in +the Devicetree Specification. + +Signed-off-by: Geert Uytterhoeven +Signed-off-by: Shawn Guo +Signed-off-by: Sasha Levin +--- + arch/arm/boot/dts/imx53-ppd.dts | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/arch/arm/boot/dts/imx53-ppd.dts b/arch/arm/boot/dts/imx53-ppd.dts +index 37d0cffea99c..70c4a4852256 100644 +--- a/arch/arm/boot/dts/imx53-ppd.dts ++++ b/arch/arm/boot/dts/imx53-ppd.dts +@@ -488,7 +488,7 @@ &i2c1 { + scl-gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>; + status = "okay"; + +- i2c-switch@70 { ++ i2c-mux@70 { + compatible = "nxp,pca9547"; + #address-cells = <1>; + #size-cells = <0>; +-- +2.39.0 + diff --git a/queue-6.1/arm-dts-vf610-fix-pca9548-i2c-mux-node-names.patch b/queue-6.1/arm-dts-vf610-fix-pca9548-i2c-mux-node-names.patch new file mode 100644 index 00000000000..8546322450b --- /dev/null +++ b/queue-6.1/arm-dts-vf610-fix-pca9548-i2c-mux-node-names.patch @@ -0,0 +1,58 @@ +From ae8e10fbeefb199c73ac0664300bda7cda1d3491 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 2 Dec 2022 17:49:21 +0100 +Subject: ARM: dts: vf610: Fix pca9548 i2c-mux node names + +From: Geert Uytterhoeven + +[ Upstream commit 42825d1f269355d63554ab3c3762611e4d8053e9 ] + +"make dtbs_check": + + arch/arm/boot/dts/vf610-zii-dev-rev-b.dtb: tca9548@70: $nodename:0: 'tca9548@70' does not match '^(i2c-?)?mux' + From schema: Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml + arch/arm/boot/dts/vf610-zii-dev-rev-b.dtb: tca9548@70: Unevaluated properties are not allowed ('#address-cells', '#size-cells', 'i2c@0', 'i2c@1', 'i2c@2', 'i2c@3', 'i2c@4' were unexpected) + From schema: /scratch/geert/linux/linux-renesas/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml + ... + +Fix this by renaming PCA9548 nodes to "i2c-mux", to match the I2C bus +multiplexer/switch DT bindings and the Generic Names Recommendation in +the Devicetree Specification. + +Signed-off-by: Geert Uytterhoeven +Signed-off-by: Shawn Guo +Signed-off-by: Sasha Levin +--- + arch/arm/boot/dts/vf610-zii-dev-rev-b.dts | 2 +- + arch/arm/boot/dts/vf610-zii-dev-rev-c.dts | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/arch/arm/boot/dts/vf610-zii-dev-rev-b.dts b/arch/arm/boot/dts/vf610-zii-dev-rev-b.dts +index 42ed4a04a12e..6280c5e86a12 100644 +--- a/arch/arm/boot/dts/vf610-zii-dev-rev-b.dts ++++ b/arch/arm/boot/dts/vf610-zii-dev-rev-b.dts +@@ -345,7 +345,7 @@ gpio6: io-expander@22 { + }; + + &i2c2 { +- tca9548@70 { ++ i2c-mux@70 { + compatible = "nxp,pca9548"; + pinctrl-0 = <&pinctrl_i2c_mux_reset>; + pinctrl-names = "default"; +diff --git a/arch/arm/boot/dts/vf610-zii-dev-rev-c.dts b/arch/arm/boot/dts/vf610-zii-dev-rev-c.dts +index de79dcfd32e6..ba2001f37315 100644 +--- a/arch/arm/boot/dts/vf610-zii-dev-rev-c.dts ++++ b/arch/arm/boot/dts/vf610-zii-dev-rev-c.dts +@@ -340,7 +340,7 @@ eeprom@50 { + }; + + &i2c2 { +- tca9548@70 { ++ i2c-mux@70 { + compatible = "nxp,pca9548"; + pinctrl-0 = <&pinctrl_i2c_mux_reset>; + pinctrl-names = "default"; +-- +2.39.0 + diff --git a/queue-6.1/arm-omap1-fix-building-gpio15xx.patch b/queue-6.1/arm-omap1-fix-building-gpio15xx.patch new file mode 100644 index 00000000000..58e981d4105 --- /dev/null +++ b/queue-6.1/arm-omap1-fix-building-gpio15xx.patch @@ -0,0 +1,45 @@ +From fc98eac7422e4929caa8c7268e206d5e3e17b12c Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Tue, 13 Dec 2022 22:06:49 +0100 +Subject: ARM: omap1: fix building gpio15xx + +From: Arnd Bergmann + +[ Upstream commit 9d46ce57f4d1c626bb48170226ea5e35deb5877c ] + +In some randconfig builds, the asm/irq.h header is not included +in gpio15xx.c, so add an explicit include to avoid a build fialure: + +In file included from arch/arm/mach-omap1/gpio15xx.c:15: +arch/arm/mach-omap1/irqs.h:99:34: error: 'NR_IRQS_LEGACY' undeclared here (not in a function) + 99 | #define IH2_BASE (NR_IRQS_LEGACY + 32) + | ^~~~~~~~~~~~~~ +arch/arm/mach-omap1/irqs.h:105:38: note: in expansion of macro 'IH2_BASE' + 105 | #define INT_MPUIO (5 + IH2_BASE) + | ^~~~~~~~ +arch/arm/mach-omap1/gpio15xx.c:28:27: note: in expansion of macro 'INT_MPUIO' + 28 | .start = INT_MPUIO, + | ^~~~~~~~~ + +Acked-by: Aaro Koskinen +Signed-off-by: Arnd Bergmann +Signed-off-by: Sasha Levin +--- + arch/arm/mach-omap1/gpio15xx.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/arch/arm/mach-omap1/gpio15xx.c b/arch/arm/mach-omap1/gpio15xx.c +index c675f11de99d..61fa26efd865 100644 +--- a/arch/arm/mach-omap1/gpio15xx.c ++++ b/arch/arm/mach-omap1/gpio15xx.c +@@ -11,6 +11,7 @@ + #include + #include + #include ++#include + + #include "irqs.h" + +-- +2.39.0 + diff --git a/queue-6.1/arm64-dts-freescale-fix-pca954x-i2c-mux-node-names.patch b/queue-6.1/arm64-dts-freescale-fix-pca954x-i2c-mux-node-names.patch new file mode 100644 index 00000000000..00530318ab8 --- /dev/null +++ b/queue-6.1/arm64-dts-freescale-fix-pca954x-i2c-mux-node-names.patch @@ -0,0 +1,207 @@ +From 537bfc262a5ba4093285e74ef0f9934cb2c6bf3e Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 2 Dec 2022 17:49:22 +0100 +Subject: arm64: dts: freescale: Fix pca954x i2c-mux node names + +From: Geert Uytterhoeven + +[ Upstream commit b025b4f5c288e29bbea421613a5b4eacf9261fbb ] + +"make dtbs_check": + + arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dtb: pca9547@77: $nodename:0: 'pca9547@77' does not match '^(i2c-?)?mux' + From schema: Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml + arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dtb: pca9547@77: Unevaluated properties are not allowed ('#address-cells', '#size-cells', 'i2c@4' were unexpected) + From schema: Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml + ... + +Fix this by renaming PCA954x nodes to "i2c-mux", to match the I2C bus +multiplexer/switch DT bindings and the Generic Names Recommendation in +the Devicetree Specification. + +Signed-off-by: Geert Uytterhoeven +Signed-off-by: Shawn Guo +Signed-off-by: Sasha Levin +--- + arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts | 2 +- + arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts | 2 +- + arch/arm64/boot/dts/freescale/fsl-ls1046a-qds.dts | 2 +- + arch/arm64/boot/dts/freescale/fsl-ls1088a-qds.dts | 2 +- + arch/arm64/boot/dts/freescale/fsl-ls1088a-rdb.dts | 2 +- + arch/arm64/boot/dts/freescale/fsl-ls1088a-ten64.dts | 2 +- + arch/arm64/boot/dts/freescale/fsl-ls208xa-qds.dtsi | 2 +- + arch/arm64/boot/dts/freescale/fsl-ls208xa-rdb.dtsi | 2 +- + arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dtsi | 2 +- + arch/arm64/boot/dts/freescale/imx8mm-nitrogen-r2.dts | 2 +- + arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dts | 4 ++-- + arch/arm64/boot/dts/freescale/imx8qxp-mek.dts | 2 +- + 12 files changed, 13 insertions(+), 13 deletions(-) + +diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts +index 5a8d85a7d161..bbdf989058ff 100644 +--- a/arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts ++++ b/arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts +@@ -110,7 +110,7 @@ &esdhc1 { + &i2c0 { + status = "okay"; + +- pca9547@77 { ++ i2c-mux@77 { + compatible = "nxp,pca9547"; + reg = <0x77>; + #address-cells = <1>; +diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts +index 9b726c2a4842..dda27ed7aaf2 100644 +--- a/arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts ++++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts +@@ -89,7 +89,7 @@ fpga: board-control@2,0 { + &i2c0 { + status = "okay"; + +- pca9547@77 { ++ i2c-mux@77 { + compatible = "nxp,pca9547"; + reg = <0x77>; + #address-cells = <1>; +diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1046a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-ls1046a-qds.dts +index b2fcbba60d3a..3b0ed9305f2b 100644 +--- a/arch/arm64/boot/dts/freescale/fsl-ls1046a-qds.dts ++++ b/arch/arm64/boot/dts/freescale/fsl-ls1046a-qds.dts +@@ -88,7 +88,7 @@ &duart1 { + &i2c0 { + status = "okay"; + +- pca9547@77 { ++ i2c-mux@77 { + compatible = "nxp,pca9547"; + reg = <0x77>; + #address-cells = <1>; +diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1088a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-ls1088a-qds.dts +index 41d8b15f25a5..aa52ff73ff9e 100644 +--- a/arch/arm64/boot/dts/freescale/fsl-ls1088a-qds.dts ++++ b/arch/arm64/boot/dts/freescale/fsl-ls1088a-qds.dts +@@ -53,7 +53,7 @@ flash@2 { + &i2c0 { + status = "okay"; + +- i2c-switch@77 { ++ i2c-mux@77 { + compatible = "nxp,pca9547"; + reg = <0x77>; + #address-cells = <1>; +diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1088a-rdb.dts b/arch/arm64/boot/dts/freescale/fsl-ls1088a-rdb.dts +index 1bfbce69cc8b..ee8e932628d1 100644 +--- a/arch/arm64/boot/dts/freescale/fsl-ls1088a-rdb.dts ++++ b/arch/arm64/boot/dts/freescale/fsl-ls1088a-rdb.dts +@@ -136,7 +136,7 @@ mdio2_aquantia_phy: ethernet-phy@0 { + &i2c0 { + status = "okay"; + +- i2c-switch@77 { ++ i2c-mux@77 { + compatible = "nxp,pca9547"; + reg = <0x77>; + #address-cells = <1>; +diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1088a-ten64.dts b/arch/arm64/boot/dts/freescale/fsl-ls1088a-ten64.dts +index ef6c8967533e..d4867d6cf47c 100644 +--- a/arch/arm64/boot/dts/freescale/fsl-ls1088a-ten64.dts ++++ b/arch/arm64/boot/dts/freescale/fsl-ls1088a-ten64.dts +@@ -245,7 +245,7 @@ rx8035: rtc@32 { + &i2c3 { + status = "okay"; + +- i2c-switch@70 { ++ i2c-mux@70 { + compatible = "nxp,pca9540"; + #address-cells = <1>; + #size-cells = <0>; +diff --git a/arch/arm64/boot/dts/freescale/fsl-ls208xa-qds.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls208xa-qds.dtsi +index f598669e742f..52c5a43b30a0 100644 +--- a/arch/arm64/boot/dts/freescale/fsl-ls208xa-qds.dtsi ++++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa-qds.dtsi +@@ -103,7 +103,7 @@ mdio0_phy15: mdio-phy3@1f { + + &i2c0 { + status = "okay"; +- pca9547@77 { ++ i2c-mux@77 { + compatible = "nxp,pca9547"; + reg = <0x77>; + #address-cells = <1>; +diff --git a/arch/arm64/boot/dts/freescale/fsl-ls208xa-rdb.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls208xa-rdb.dtsi +index 3d9647b3da14..537cecb13dd0 100644 +--- a/arch/arm64/boot/dts/freescale/fsl-ls208xa-rdb.dtsi ++++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa-rdb.dtsi +@@ -44,7 +44,7 @@ cpld@3,0 { + + &i2c0 { + status = "okay"; +- pca9547@75 { ++ i2c-mux@75 { + compatible = "nxp,pca9547"; + reg = <0x75>; + #address-cells = <1>; +diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dtsi b/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dtsi +index afb455210bd0..d32a52ab00a4 100644 +--- a/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dtsi ++++ b/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dtsi +@@ -54,7 +54,7 @@ &esdhc1 { + &i2c0 { + status = "okay"; + +- i2c-switch@77 { ++ i2c-mux@77 { + compatible = "nxp,pca9547"; + #address-cells = <1>; + #size-cells = <0>; +diff --git a/arch/arm64/boot/dts/freescale/imx8mm-nitrogen-r2.dts b/arch/arm64/boot/dts/freescale/imx8mm-nitrogen-r2.dts +index 74c09891600f..6357078185ed 100644 +--- a/arch/arm64/boot/dts/freescale/imx8mm-nitrogen-r2.dts ++++ b/arch/arm64/boot/dts/freescale/imx8mm-nitrogen-r2.dts +@@ -214,7 +214,7 @@ &i2c3 { + pinctrl-0 = <&pinctrl_i2c3>; + status = "okay"; + +- i2cmux@70 { ++ i2c-mux@70 { + compatible = "nxp,pca9540"; + reg = <0x70>; + #address-cells = <1>; +diff --git a/arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dts b/arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dts +index 9dda2a1554c3..8614c18b5998 100644 +--- a/arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dts ++++ b/arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dts +@@ -133,7 +133,7 @@ &i2c1 { + pinctrl-0 = <&pinctrl_i2c1>; + status = "okay"; + +- i2cmux@70 { ++ i2c-mux@70 { + compatible = "nxp,pca9546"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_i2c1_pca9546>; +@@ -216,7 +216,7 @@ &i2c4 { + pinctrl-0 = <&pinctrl_i2c4>; + status = "okay"; + +- pca9546: i2cmux@70 { ++ pca9546: i2c-mux@70 { + compatible = "nxp,pca9546"; + reg = <0x70>; + #address-cells = <1>; +diff --git a/arch/arm64/boot/dts/freescale/imx8qxp-mek.dts b/arch/arm64/boot/dts/freescale/imx8qxp-mek.dts +index 07d8dd8160f6..afa883389456 100644 +--- a/arch/arm64/boot/dts/freescale/imx8qxp-mek.dts ++++ b/arch/arm64/boot/dts/freescale/imx8qxp-mek.dts +@@ -61,7 +61,7 @@ &i2c1 { + pinctrl-0 = <&pinctrl_lpi2c1 &pinctrl_ioexp_rst>; + status = "okay"; + +- i2c-switch@71 { ++ i2c-mux@71 { + compatible = "nxp,pca9646", "nxp,pca9546"; + #address-cells = <1>; + #size-cells = <0>; +-- +2.39.0 + diff --git a/queue-6.1/arm64-dts-imx8mq-thor96-fix-no-mmc-property-for-sdhc.patch b/queue-6.1/arm64-dts-imx8mq-thor96-fix-no-mmc-property-for-sdhc.patch new file mode 100644 index 00000000000..834db55978d --- /dev/null +++ b/queue-6.1/arm64-dts-imx8mq-thor96-fix-no-mmc-property-for-sdhc.patch @@ -0,0 +1,44 @@ +From f5c82a6cc9fceb966af709894f90a1a5917e4a7c Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Sun, 4 Dec 2022 10:44:17 +0100 +Subject: arm64: dts: imx8mq-thor96: fix no-mmc property for SDHCI + +From: Krzysztof Kozlowski + +[ Upstream commit ef10d57936ead5e817ef7cea6a87531085e77773 ] + +There is no "no-emmc" property, so intention for SD/SDIO only nodes was +to use "no-mmc". + +Signed-off-by: Krzysztof Kozlowski +Signed-off-by: Shawn Guo +Signed-off-by: Sasha Levin +--- + arch/arm64/boot/dts/freescale/imx8mq-thor96.dts | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/arch/arm64/boot/dts/freescale/imx8mq-thor96.dts b/arch/arm64/boot/dts/freescale/imx8mq-thor96.dts +index 5d5aa6537225..6e6182709d22 100644 +--- a/arch/arm64/boot/dts/freescale/imx8mq-thor96.dts ++++ b/arch/arm64/boot/dts/freescale/imx8mq-thor96.dts +@@ -339,7 +339,7 @@ &usdhc1 { + bus-width = <4>; + non-removable; + no-sd; +- no-emmc; ++ no-mmc; + status = "okay"; + + brcmf: wifi@1 { +@@ -359,7 +359,7 @@ &usdhc2 { + cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>; + bus-width = <4>; + no-sdio; +- no-emmc; ++ no-mmc; + disable-wp; + status = "okay"; + }; +-- +2.39.0 + diff --git a/queue-6.1/arm64-dts-msm8994-angler-fix-the-memory-map.patch b/queue-6.1/arm64-dts-msm8994-angler-fix-the-memory-map.patch new file mode 100644 index 00000000000..7bd02ce2989 --- /dev/null +++ b/queue-6.1/arm64-dts-msm8994-angler-fix-the-memory-map.patch @@ -0,0 +1,63 @@ +From e6c31f800b56fb806bab9d072ef9cd490a13ebc4 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 30 Dec 2022 20:48:45 +0100 +Subject: arm64: dts: msm8994-angler: fix the memory map + +From: Dominik Kobinski + +[ Upstream commit 380cd3a34b7f9825a60ccb045611af9cb4533b70 ] + +Add reserved regions for memory hole and tz app mem to prevent +rebooting. Also enable cont_splash_mem, it is the same as the +generic 8994 one. + +Reported-by: Petr Vorel +Signed-off-by: Dominik Kobinski +Reviewed-by: Petr Vorel +Signed-off-by: Bjorn Andersson +Link: https://lore.kernel.org/r/20221230194845.57780-1-dominikkobinski314@gmail.com +Signed-off-by: Sasha Levin +--- + .../qcom/msm8994-huawei-angler-rev-101.dts | 19 ++++++++++++++++--- + 1 file changed, 16 insertions(+), 3 deletions(-) + +diff --git a/arch/arm64/boot/dts/qcom/msm8994-huawei-angler-rev-101.dts b/arch/arm64/boot/dts/qcom/msm8994-huawei-angler-rev-101.dts +index dbfbb77e9ff5..7e2c0dcc11ab 100644 +--- a/arch/arm64/boot/dts/qcom/msm8994-huawei-angler-rev-101.dts ++++ b/arch/arm64/boot/dts/qcom/msm8994-huawei-angler-rev-101.dts +@@ -8,9 +8,6 @@ + + #include "msm8994.dtsi" + +-/* Angler's firmware does not report where the memory is allocated */ +-/delete-node/ &cont_splash_mem; +- + / { + model = "Huawei Nexus 6P"; + compatible = "huawei,angler", "qcom,msm8994"; +@@ -27,6 +24,22 @@ aliases { + chosen { + stdout-path = "serial0:115200n8"; + }; ++ ++ reserved-memory { ++ #address-cells = <2>; ++ #size-cells = <2>; ++ ranges; ++ ++ tzapp_mem: tzapp@4800000 { ++ reg = <0 0x04800000 0 0x1900000>; ++ no-map; ++ }; ++ ++ removed_region: reserved@6300000 { ++ reg = <0 0x06300000 0 0xD00000>; ++ no-map; ++ }; ++ }; + }; + + &blsp1_uart2 { +-- +2.39.0 + diff --git a/queue-6.1/blk-cgroup-fix-missing-pd_online_fn-while-activating.patch b/queue-6.1/blk-cgroup-fix-missing-pd_online_fn-while-activating.patch new file mode 100644 index 00000000000..05c1a2d2fef --- /dev/null +++ b/queue-6.1/blk-cgroup-fix-missing-pd_online_fn-while-activating.patch @@ -0,0 +1,39 @@ +From e73368ff6931de289f4044d53995a655ba656e86 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Tue, 3 Jan 2023 19:28:33 +0800 +Subject: blk-cgroup: fix missing pd_online_fn() while activating policy + +From: Yu Kuai + +[ Upstream commit e3ff8887e7db757360f97634e0d6f4b8e27a8c46 ] + +If the policy defines pd_online_fn(), it should be called after +pd_init_fn(), like blkg_create(). + +Signed-off-by: Yu Kuai +Acked-by: Tejun Heo +Link: https://lore.kernel.org/r/20230103112833.2013432-1-yukuai1@huaweicloud.com +Signed-off-by: Jens Axboe +Signed-off-by: Sasha Levin +--- + block/blk-cgroup.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c +index fcf9cf49f5de..7c91d9195da8 100644 +--- a/block/blk-cgroup.c ++++ b/block/blk-cgroup.c +@@ -1408,6 +1408,10 @@ int blkcg_activate_policy(struct request_queue *q, + list_for_each_entry_reverse(blkg, &q->blkg_list, q_node) + pol->pd_init_fn(blkg->pd[pol->plid]); + ++ if (pol->pd_online_fn) ++ list_for_each_entry_reverse(blkg, &q->blkg_list, q_node) ++ pol->pd_online_fn(blkg->pd[pol->plid]); ++ + __set_bit(pol->plid, q->blkcg_pols); + ret = 0; + +-- +2.39.0 + diff --git a/queue-6.1/block-fix-hctx-checks-for-batch-allocation.patch b/queue-6.1/block-fix-hctx-checks-for-batch-allocation.patch new file mode 100644 index 00000000000..904bcba58b3 --- /dev/null +++ b/queue-6.1/block-fix-hctx-checks-for-batch-allocation.patch @@ -0,0 +1,53 @@ +From b0556c1b65b326c8cf82fdb5d7bacc6a44e57de9 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Tue, 17 Jan 2023 11:42:15 +0000 +Subject: block: fix hctx checks for batch allocation + +From: Pavel Begunkov + +[ Upstream commit 7746564793978fe2f43b18a302b22dca0ad3a0e8 ] + +When there are no read queues read requests will be assigned a +default queue on allocation. However, blk_mq_get_cached_request() is not +prepared for that and will fail all attempts to grab read requests from +the cache. Worst case it doubles the number of requests allocated, +roughly half of which will be returned by blk_mq_free_plug_rqs(). + +It only affects batched allocations and so is io_uring specific. +For reference, QD8 t/io_uring benchmark improves by 20-35%. + +Signed-off-by: Pavel Begunkov +Link: https://lore.kernel.org/r/80d4511011d7d4751b4cf6375c4e38f237d935e3.1673955390.git.asml.silence@gmail.com +Signed-off-by: Jens Axboe +Signed-off-by: Sasha Levin +--- + block/blk-mq.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/block/blk-mq.c b/block/blk-mq.c +index 63abbe342b28..83fbc7c54617 100644 +--- a/block/blk-mq.c ++++ b/block/blk-mq.c +@@ -2858,6 +2858,7 @@ static inline struct request *blk_mq_get_cached_request(struct request_queue *q, + struct blk_plug *plug, struct bio **bio, unsigned int nsegs) + { + struct request *rq; ++ enum hctx_type type, hctx_type; + + if (!plug) + return NULL; +@@ -2870,7 +2871,10 @@ static inline struct request *blk_mq_get_cached_request(struct request_queue *q, + return NULL; + } + +- if (blk_mq_get_hctx_type((*bio)->bi_opf) != rq->mq_hctx->type) ++ type = blk_mq_get_hctx_type((*bio)->bi_opf); ++ hctx_type = rq->mq_hctx->type; ++ if (type != hctx_type && ++ !(type == HCTX_TYPE_READ && hctx_type == HCTX_TYPE_DEFAULT)) + return NULL; + if (op_is_flush(rq->cmd_flags) != op_is_flush((*bio)->bi_opf)) + return NULL; +-- +2.39.0 + diff --git a/queue-6.1/bpf-skip-task-with-pid-1-in-send_signal_common.patch b/queue-6.1/bpf-skip-task-with-pid-1-in-send_signal_common.patch new file mode 100644 index 00000000000..da1e527cdcd --- /dev/null +++ b/queue-6.1/bpf-skip-task-with-pid-1-in-send_signal_common.patch @@ -0,0 +1,61 @@ +From bbcaa60e8bd30db9ddee7af325e45ff27f70d5ab Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 6 Jan 2023 16:48:38 +0800 +Subject: bpf: Skip task with pid=1 in send_signal_common() + +From: Hao Sun + +[ Upstream commit a3d81bc1eaef48e34dd0b9b48eefed9e02a06451 ] + +The following kernel panic can be triggered when a task with pid=1 attaches +a prog that attempts to send killing signal to itself, also see [1] for more +details: + + Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b + CPU: 3 PID: 1 Comm: systemd Not tainted 6.1.0-09652-g59fe41b5255f #148 + Call Trace: + + __dump_stack lib/dump_stack.c:88 [inline] + dump_stack_lvl+0x100/0x178 lib/dump_stack.c:106 + panic+0x2c4/0x60f kernel/panic.c:275 + do_exit.cold+0x63/0xe4 kernel/exit.c:789 + do_group_exit+0xd4/0x2a0 kernel/exit.c:950 + get_signal+0x2460/0x2600 kernel/signal.c:2858 + arch_do_signal_or_restart+0x78/0x5d0 arch/x86/kernel/signal.c:306 + exit_to_user_mode_loop kernel/entry/common.c:168 [inline] + exit_to_user_mode_prepare+0x15f/0x250 kernel/entry/common.c:203 + __syscall_exit_to_user_mode_work kernel/entry/common.c:285 [inline] + syscall_exit_to_user_mode+0x1d/0x50 kernel/entry/common.c:296 + do_syscall_64+0x44/0xb0 arch/x86/entry/common.c:86 + entry_SYSCALL_64_after_hwframe+0x63/0xcd + +So skip task with pid=1 in bpf_send_signal_common() to avoid the panic. + + [1] https://lore.kernel.org/bpf/20221222043507.33037-1-sunhao.th@gmail.com + +Signed-off-by: Hao Sun +Signed-off-by: Daniel Borkmann +Acked-by: Stanislav Fomichev +Link: https://lore.kernel.org/bpf/20230106084838.12690-1-sunhao.th@gmail.com +Signed-off-by: Sasha Levin +--- + kernel/trace/bpf_trace.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/kernel/trace/bpf_trace.c b/kernel/trace/bpf_trace.c +index 1ed08967fb97..eb8c117cc8b6 100644 +--- a/kernel/trace/bpf_trace.c ++++ b/kernel/trace/bpf_trace.c +@@ -847,6 +847,9 @@ static int bpf_send_signal_common(u32 sig, enum pid_type type) + return -EPERM; + if (unlikely(!nmi_uaccess_okay())) + return -EPERM; ++ /* Task should not be pid=1 to avoid kernel panic. */ ++ if (unlikely(is_global_init(current))) ++ return -EPERM; + + if (irqs_disabled()) { + /* Do an early check on signal validity. Otherwise, +-- +2.39.0 + diff --git a/queue-6.1/cifs-fix-return-of-uninitialized-rc-in-dfs_cache_upd.patch b/queue-6.1/cifs-fix-return-of-uninitialized-rc-in-dfs_cache_upd.patch new file mode 100644 index 00000000000..3ae5aa89b49 --- /dev/null +++ b/queue-6.1/cifs-fix-return-of-uninitialized-rc-in-dfs_cache_upd.patch @@ -0,0 +1,42 @@ +From ba7423790a7e14c9424ede0cbfd4023a154a4c1d Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 18 Jan 2023 13:36:31 -0300 +Subject: cifs: fix return of uninitialized rc in dfs_cache_update_tgthint() + +From: Paulo Alcantara + +[ Upstream commit d6a49e8c4ca4d399ed65ac219585187fc8c2e2b1 ] + +Fix this by initializing rc to 0 as cache_refresh_path() would not set +it in case of success. + +Reported-by: kernel test robot +Link: https://lore.kernel.org/all/202301190004.bEHvbKG6-lkp@intel.com/ +Signed-off-by: Paulo Alcantara (SUSE) +Signed-off-by: Steve French +Signed-off-by: Sasha Levin +--- + fs/cifs/dfs_cache.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/fs/cifs/dfs_cache.c b/fs/cifs/dfs_cache.c +index 4302dc75843c..3bc1d3494be3 100644 +--- a/fs/cifs/dfs_cache.c ++++ b/fs/cifs/dfs_cache.c +@@ -1050,10 +1050,10 @@ int dfs_cache_update_tgthint(const unsigned int xid, struct cifs_ses *ses, + const struct nls_table *cp, int remap, const char *path, + const struct dfs_cache_tgt_iterator *it) + { +- int rc; +- const char *npath; +- struct cache_entry *ce; + struct cache_dfs_tgt *t; ++ struct cache_entry *ce; ++ const char *npath; ++ int rc = 0; + + npath = dfs_cache_canonical_path(path, cp, remap); + if (IS_ERR(npath)) +-- +2.39.0 + diff --git a/queue-6.1/dmaengine-imx-sdma-fix-a-possible-memory-leak-in-sdm.patch b/queue-6.1/dmaengine-imx-sdma-fix-a-possible-memory-leak-in-sdm.patch new file mode 100644 index 00000000000..9dbf3c82b03 --- /dev/null +++ b/queue-6.1/dmaengine-imx-sdma-fix-a-possible-memory-leak-in-sdm.patch @@ -0,0 +1,49 @@ +From 0763bb815fd78c0baf937c0f3a583350ec64312c Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 30 Nov 2022 17:08:00 +0800 +Subject: dmaengine: imx-sdma: Fix a possible memory leak in sdma_transfer_init + +From: Hui Wang + +[ Upstream commit 1417f59ac0b02130ee56c0c50794b9b257be3d17 ] + +If the function sdma_load_context() fails, the sdma_desc will be +freed, but the allocated desc->bd is forgot to be freed. + +We already met the sdma_load_context() failure case and the log as +below: +[ 450.699064] imx-sdma 30bd0000.dma-controller: Timeout waiting for CH0 ready +... + +In this case, the desc->bd will not be freed without this change. + +Signed-off-by: Hui Wang +Reviewed-by: Sascha Hauer +Link: https://lore.kernel.org/r/20221130090800.102035-1-hui.wang@canonical.com +Signed-off-by: Vinod Koul +Signed-off-by: Sasha Levin +--- + drivers/dma/imx-sdma.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c +index fbea5f62dd98..b926abe4fa43 100644 +--- a/drivers/dma/imx-sdma.c ++++ b/drivers/dma/imx-sdma.c +@@ -1521,10 +1521,12 @@ static struct sdma_desc *sdma_transfer_init(struct sdma_channel *sdmac, + sdma_config_ownership(sdmac, false, true, false); + + if (sdma_load_context(sdmac)) +- goto err_desc_out; ++ goto err_bd_out; + + return desc; + ++err_bd_out: ++ sdma_free_bd(desc); + err_desc_out: + kfree(desc); + err_out: +-- +2.39.0 + diff --git a/queue-6.1/erofs-clean-up-parsing-of-fscache-related-options.patch b/queue-6.1/erofs-clean-up-parsing-of-fscache-related-options.patch new file mode 100644 index 00000000000..b9b0d88be69 --- /dev/null +++ b/queue-6.1/erofs-clean-up-parsing-of-fscache-related-options.patch @@ -0,0 +1,63 @@ +From 277b333e8d8096f5b7f738d55304a341c732fd47 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Thu, 12 Jan 2023 14:54:31 +0800 +Subject: erofs: clean up parsing of fscache related options + +From: Jingbo Xu + +[ Upstream commit e02ac3e7329f76c5de40cba2746cbe165f571dff ] + +... to avoid the mess of conditional preprocessing as we are continually +adding fscache related mount options. + +Reviewd-by: Gao Xiang +Reviewed-by: Yue Hu +Reviewed-by: Chao Yu +Signed-off-by: Jingbo Xu +Link: https://lore.kernel.org/r/20230112065431.124926-3-jefflexu@linux.alibaba.com +Signed-off-by: Gao Xiang +Signed-off-by: Sasha Levin +--- + fs/erofs/super.c | 13 ++++++------- + 1 file changed, 6 insertions(+), 7 deletions(-) + +diff --git a/fs/erofs/super.c b/fs/erofs/super.c +index 481788c24a68..626a615dafc2 100644 +--- a/fs/erofs/super.c ++++ b/fs/erofs/super.c +@@ -577,26 +577,25 @@ static int erofs_fc_parse_param(struct fs_context *fc, + } + ++ctx->devs->extra_devices; + break; +- case Opt_fsid: + #ifdef CONFIG_EROFS_FS_ONDEMAND ++ case Opt_fsid: + kfree(ctx->fsid); + ctx->fsid = kstrdup(param->string, GFP_KERNEL); + if (!ctx->fsid) + return -ENOMEM; +-#else +- errorfc(fc, "fsid option not supported"); +-#endif + break; + case Opt_domain_id: +-#ifdef CONFIG_EROFS_FS_ONDEMAND + kfree(ctx->domain_id); + ctx->domain_id = kstrdup(param->string, GFP_KERNEL); + if (!ctx->domain_id) + return -ENOMEM; ++ break; + #else +- errorfc(fc, "domain_id option not supported"); +-#endif ++ case Opt_fsid: ++ case Opt_domain_id: ++ errorfc(fc, "%s option not supported", erofs_fs_parameters[opt].name); + break; ++#endif + default: + return -ENOPARAM; + } +-- +2.39.0 + diff --git a/queue-6.1/erofs-zmap.c-fix-incorrect-offset-calculation.patch b/queue-6.1/erofs-zmap.c-fix-incorrect-offset-calculation.patch new file mode 100644 index 00000000000..7dbc4983627 --- /dev/null +++ b/queue-6.1/erofs-zmap.c-fix-incorrect-offset-calculation.patch @@ -0,0 +1,61 @@ +From 2eb92f0d24f3f60fc805bf9d348332ea25a51cc5 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 9 Dec 2022 15:51:51 +0530 +Subject: erofs/zmap.c: Fix incorrect offset calculation + +From: Siddh Raman Pant + +[ Upstream commit 6acd87d50998ef0afafc441613aeaf5a8f5c9eff ] + +Effective offset to add to length was being incorrectly calculated, +which resulted in iomap->length being set to 0, triggering a WARN_ON +in iomap_iter_done(). + +Fix that, and describe it in comments. + +This was reported as a crash by syzbot under an issue about a warning +encountered in iomap_iter_done(), but unrelated to erofs. + +C reproducer: https://syzkaller.appspot.com/text?tag=ReproC&x=1037a6b2880000 +Kernel config: https://syzkaller.appspot.com/text?tag=KernelConfig&x=e2021a61197ebe02 +Dashboard link: https://syzkaller.appspot.com/bug?extid=a8e049cd3abd342936b6 + +Reported-by: syzbot+a8e049cd3abd342936b6@syzkaller.appspotmail.com +Suggested-by: Gao Xiang +Signed-off-by: Siddh Raman Pant +Reviewed-by: Gao Xiang +Reviewed-by: Chao Yu +Link: https://lore.kernel.org/r/20221209102151.311049-1-code@siddh.me +Signed-off-by: Gao Xiang +Signed-off-by: Sasha Levin +--- + fs/erofs/zmap.c | 10 +++++++--- + 1 file changed, 7 insertions(+), 3 deletions(-) + +diff --git a/fs/erofs/zmap.c b/fs/erofs/zmap.c +index e6d5d7a18fb0..39cc014dba40 100644 +--- a/fs/erofs/zmap.c ++++ b/fs/erofs/zmap.c +@@ -793,12 +793,16 @@ static int z_erofs_iomap_begin_report(struct inode *inode, loff_t offset, + iomap->type = IOMAP_HOLE; + iomap->addr = IOMAP_NULL_ADDR; + /* +- * No strict rule how to describe extents for post EOF, yet +- * we need do like below. Otherwise, iomap itself will get ++ * No strict rule on how to describe extents for post EOF, yet ++ * we need to do like below. Otherwise, iomap itself will get + * into an endless loop on post EOF. ++ * ++ * Calculate the effective offset by subtracting extent start ++ * (map.m_la) from the requested offset, and add it to length. ++ * (NB: offset >= map.m_la always) + */ + if (iomap->offset >= inode->i_size) +- iomap->length = length + map.m_la - offset; ++ iomap->length = length + offset - map.m_la; + } + iomap->flags = 0; + return 0; +-- +2.39.0 + diff --git a/queue-6.1/firmware-arm_scmi-clear-stale-xfer-hdr.status.patch b/queue-6.1/firmware-arm_scmi-clear-stale-xfer-hdr.status.patch new file mode 100644 index 00000000000..c939f193c9f --- /dev/null +++ b/queue-6.1/firmware-arm_scmi-clear-stale-xfer-hdr.status.patch @@ -0,0 +1,37 @@ +From ac0a7afef35bd3b6a72c7d42707654eea886d160 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Thu, 22 Dec 2022 18:38:19 +0000 +Subject: firmware: arm_scmi: Clear stale xfer->hdr.status + +From: Cristian Marussi + +[ Upstream commit f6ca5059dc0d6608dc46070f48e396d611f240d6 ] + +Stale error status reported from a previous message transaction must be +cleared before starting a new transaction to avoid being confusingly +reported in the following SCMI message dump traces. + +Signed-off-by: Cristian Marussi +Link: https://lore.kernel.org/r/20221222183823.518856-2-cristian.marussi@arm.com +Signed-off-by: Sudeep Holla +Signed-off-by: Sasha Levin +--- + drivers/firmware/arm_scmi/driver.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/drivers/firmware/arm_scmi/driver.c b/drivers/firmware/arm_scmi/driver.c +index f818d00bb2c6..ffdad59ec81f 100644 +--- a/drivers/firmware/arm_scmi/driver.c ++++ b/drivers/firmware/arm_scmi/driver.c +@@ -910,6 +910,8 @@ static int do_xfer(const struct scmi_protocol_handle *ph, + xfer->hdr.protocol_id, xfer->hdr.seq, + xfer->hdr.poll_completion); + ++ /* Clear any stale status */ ++ xfer->hdr.status = SCMI_SUCCESS; + xfer->state = SCMI_XFER_SENT_OK; + /* + * Even though spinlocking is not needed here since no race is possible +-- +2.39.0 + diff --git a/queue-6.1/gpiolib-acpi-allow-ignoring-wake-capability-on-pins-.patch b/queue-6.1/gpiolib-acpi-allow-ignoring-wake-capability-on-pins-.patch new file mode 100644 index 00000000000..877533abe28 --- /dev/null +++ b/queue-6.1/gpiolib-acpi-allow-ignoring-wake-capability-on-pins-.patch @@ -0,0 +1,50 @@ +From 832a64f6e1557e017da518199dcab0e5fdca2808 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Mon, 16 Jan 2023 13:37:01 -0600 +Subject: gpiolib: acpi: Allow ignoring wake capability on pins that aren't in + _AEI + +From: Mario Limonciello + +[ Upstream commit 0e3b175f079247f0d40d2ab695999c309d3a7498 ] + +Using the `ignore_wake` quirk or module parameter doesn't work for any pin +that has been specified in the _CRS instead of _AEI. + +Extend the `acpi_gpio_irq_is_wake` check to cover both places. + +Suggested-by: Raul Rangel +Link: https://gitlab.freedesktop.org/drm/amd/-/issues/1722#note_1722335 +Signed-off-by: Mario Limonciello +Reviewed-by: Andy Shevchenko +Signed-off-by: Bartosz Golaszewski +Signed-off-by: Sasha Levin +--- + drivers/gpio/gpiolib-acpi.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/drivers/gpio/gpiolib-acpi.c b/drivers/gpio/gpiolib-acpi.c +index a7d2358736fe..27f234637a15 100644 +--- a/drivers/gpio/gpiolib-acpi.c ++++ b/drivers/gpio/gpiolib-acpi.c +@@ -361,7 +361,7 @@ static bool acpi_gpio_in_ignore_list(const char *ignore_list, const char *contro + } + + static bool acpi_gpio_irq_is_wake(struct device *parent, +- struct acpi_resource_gpio *agpio) ++ const struct acpi_resource_gpio *agpio) + { + unsigned int pin = agpio->pin_table[0]; + +@@ -754,7 +754,7 @@ static int acpi_populate_gpio_lookup(struct acpi_resource *ares, void *data) + lookup->info.pin_config = agpio->pin_config; + lookup->info.debounce = agpio->debounce_timeout; + lookup->info.gpioint = gpioint; +- lookup->info.wake_capable = agpio->wake_capable == ACPI_WAKE_CAPABLE; ++ lookup->info.wake_capable = acpi_gpio_irq_is_wake(&lookup->info.adev->dev, agpio); + + /* + * Polarity and triggering are only specified for GpioInt +-- +2.39.0 + diff --git a/queue-6.1/hid-playstation-sanity-check-dualsense-calibration-d.patch b/queue-6.1/hid-playstation-sanity-check-dualsense-calibration-d.patch new file mode 100644 index 00000000000..13a7f4e8a59 --- /dev/null +++ b/queue-6.1/hid-playstation-sanity-check-dualsense-calibration-d.patch @@ -0,0 +1,87 @@ +From 44c9ae070da3eecdaeb9848759e03bd9dcb37e38 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Thu, 5 Jan 2023 17:59:08 -0800 +Subject: HID: playstation: sanity check DualSense calibration data. + +From: Roderick Colenbrander + +[ Upstream commit ccf1e1626d37745d0a697db67407beec9ae9d4b8 ] + +Make sure calibration values are defined to prevent potential kernel +crashes. This fixes a hypothetical issue for virtual or clone devices +inspired by a similar fix for DS4. + +Signed-off-by: Roderick Colenbrander +Signed-off-by: Jiri Kosina +Signed-off-by: Sasha Levin +--- + drivers/hid/hid-playstation.c | 32 ++++++++++++++++++++++++++++++++ + 1 file changed, 32 insertions(+) + +diff --git a/drivers/hid/hid-playstation.c b/drivers/hid/hid-playstation.c +index 0b58763bfd30..2228f6e4ba23 100644 +--- a/drivers/hid/hid-playstation.c ++++ b/drivers/hid/hid-playstation.c +@@ -712,6 +712,7 @@ ATTRIBUTE_GROUPS(ps_device); + + static int dualsense_get_calibration_data(struct dualsense *ds) + { ++ struct hid_device *hdev = ds->base.hdev; + short gyro_pitch_bias, gyro_pitch_plus, gyro_pitch_minus; + short gyro_yaw_bias, gyro_yaw_plus, gyro_yaw_minus; + short gyro_roll_bias, gyro_roll_plus, gyro_roll_minus; +@@ -722,6 +723,7 @@ static int dualsense_get_calibration_data(struct dualsense *ds) + int speed_2x; + int range_2g; + int ret = 0; ++ int i; + uint8_t *buf; + + buf = kzalloc(DS_FEATURE_REPORT_CALIBRATION_SIZE, GFP_KERNEL); +@@ -773,6 +775,21 @@ static int dualsense_get_calibration_data(struct dualsense *ds) + ds->gyro_calib_data[2].sens_numer = speed_2x*DS_GYRO_RES_PER_DEG_S; + ds->gyro_calib_data[2].sens_denom = gyro_roll_plus - gyro_roll_minus; + ++ /* ++ * Sanity check gyro calibration data. This is needed to prevent crashes ++ * during report handling of virtual, clone or broken devices not implementing ++ * calibration data properly. ++ */ ++ for (i = 0; i < ARRAY_SIZE(ds->gyro_calib_data); i++) { ++ if (ds->gyro_calib_data[i].sens_denom == 0) { ++ hid_warn(hdev, "Invalid gyro calibration data for axis (%d), disabling calibration.", ++ ds->gyro_calib_data[i].abs_code); ++ ds->gyro_calib_data[i].bias = 0; ++ ds->gyro_calib_data[i].sens_numer = DS_GYRO_RANGE; ++ ds->gyro_calib_data[i].sens_denom = S16_MAX; ++ } ++ } ++ + /* + * Set accelerometer calibration and normalization parameters. + * Data values will be normalized to 1/DS_ACC_RES_PER_G g. +@@ -795,6 +812,21 @@ static int dualsense_get_calibration_data(struct dualsense *ds) + ds->accel_calib_data[2].sens_numer = 2*DS_ACC_RES_PER_G; + ds->accel_calib_data[2].sens_denom = range_2g; + ++ /* ++ * Sanity check accelerometer calibration data. This is needed to prevent crashes ++ * during report handling of virtual, clone or broken devices not implementing calibration ++ * data properly. ++ */ ++ for (i = 0; i < ARRAY_SIZE(ds->accel_calib_data); i++) { ++ if (ds->accel_calib_data[i].sens_denom == 0) { ++ hid_warn(hdev, "Invalid accelerometer calibration data for axis (%d), disabling calibration.", ++ ds->accel_calib_data[i].abs_code); ++ ds->accel_calib_data[i].bias = 0; ++ ds->accel_calib_data[i].sens_numer = DS_ACC_RANGE; ++ ds->accel_calib_data[i].sens_denom = S16_MAX; ++ } ++ } ++ + err_free: + kfree(buf); + return ret; +-- +2.39.0 + diff --git a/queue-6.1/hid-uclogic-add-support-for-xp-pen-deco-01-v2.patch b/queue-6.1/hid-uclogic-add-support-for-xp-pen-deco-01-v2.patch new file mode 100644 index 00000000000..63aa060f357 --- /dev/null +++ b/queue-6.1/hid-uclogic-add-support-for-xp-pen-deco-01-v2.patch @@ -0,0 +1,69 @@ +From db4903ecbfda3748f0f4fc08a5b4240c0441ca9b Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Mon, 26 Dec 2022 13:34:56 +0100 +Subject: HID: uclogic: Add support for XP-PEN Deco 01 V2 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: José Expósito + +[ Upstream commit febb2c0d7c69c0396aa32d5ab425a4163473961a ] + +The XP-PEN Deco 01 V2 is a UGEE v2 device with a frame with 8 buttons. +Its pen has 2 buttons, supports tilt and pressure. + +Add its ID in order to support the device. + +Link: https://gitlab.freedesktop.org/libinput/libinput/-/issues/839 +Tested-by: Mark Waddoups +Signed-off-by: José Expósito +Signed-off-by: Jiri Kosina +Signed-off-by: Sasha Levin +--- + drivers/hid/hid-ids.h | 1 + + drivers/hid/hid-uclogic-core.c | 2 ++ + drivers/hid/hid-uclogic-params.c | 2 ++ + 3 files changed, 5 insertions(+) + +diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h +index c3735848ed5d..0f8c11842a3a 100644 +--- a/drivers/hid/hid-ids.h ++++ b/drivers/hid/hid-ids.h +@@ -1294,6 +1294,7 @@ + #define USB_DEVICE_ID_UGEE_XPPEN_TABLET_G540 0x0075 + #define USB_DEVICE_ID_UGEE_XPPEN_TABLET_G640 0x0094 + #define USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO01 0x0042 ++#define USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO01_V2 0x0905 + #define USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO_L 0x0935 + #define USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO_PRO_S 0x0909 + #define USB_DEVICE_ID_UGEE_XPPEN_TABLET_STAR06 0x0078 +diff --git a/drivers/hid/hid-uclogic-core.c b/drivers/hid/hid-uclogic-core.c +index 7fa6fe04f1b2..cfbbc39807a6 100644 +--- a/drivers/hid/hid-uclogic-core.c ++++ b/drivers/hid/hid-uclogic-core.c +@@ -525,6 +525,8 @@ static const struct hid_device_id uclogic_devices[] = { + USB_DEVICE_ID_UGEE_XPPEN_TABLET_G640) }, + { HID_USB_DEVICE(USB_VENDOR_ID_UGEE, + USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO01) }, ++ { HID_USB_DEVICE(USB_VENDOR_ID_UGEE, ++ USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO01_V2) }, + { HID_USB_DEVICE(USB_VENDOR_ID_UGEE, + USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO_L) }, + { HID_USB_DEVICE(USB_VENDOR_ID_UGEE, +diff --git a/drivers/hid/hid-uclogic-params.c b/drivers/hid/hid-uclogic-params.c +index cd1233d7e253..3c5eea3df328 100644 +--- a/drivers/hid/hid-uclogic-params.c ++++ b/drivers/hid/hid-uclogic-params.c +@@ -1655,6 +1655,8 @@ int uclogic_params_init(struct uclogic_params *params, + break; + case VID_PID(USB_VENDOR_ID_UGEE, + USB_DEVICE_ID_UGEE_PARBLO_A610_PRO): ++ case VID_PID(USB_VENDOR_ID_UGEE, ++ USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO01_V2): + case VID_PID(USB_VENDOR_ID_UGEE, + USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO_L): + case VID_PID(USB_VENDOR_ID_UGEE, +-- +2.39.0 + diff --git a/queue-6.1/kselftest-fix-error-message-for-unconfigured-llvm-bu.patch b/queue-6.1/kselftest-fix-error-message-for-unconfigured-llvm-bu.patch new file mode 100644 index 00000000000..f22c4dabb90 --- /dev/null +++ b/queue-6.1/kselftest-fix-error-message-for-unconfigured-llvm-bu.patch @@ -0,0 +1,39 @@ +From 7b505b9f4a3d29ce87db9031250f8d2dded20235 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 11 Jan 2023 22:33:07 +0000 +Subject: kselftest: Fix error message for unconfigured LLVM builds + +From: Mark Brown + +[ Upstream commit 9fdaca2c1e157dc0a3c0faecf3a6a68e7d8d0c7b ] + +We are missing a ) when we attempt to complain about not having enough +configuration for clang, resulting in the rather inscrutable error: + +../lib.mk:23: *** unterminated call to function 'error': missing ')'. Stop. + +Add the required ) so we print the message we were trying to print. + +Signed-off-by: Mark Brown +Signed-off-by: Shuah Khan +Signed-off-by: Sasha Levin +--- + tools/testing/selftests/lib.mk | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tools/testing/selftests/lib.mk b/tools/testing/selftests/lib.mk +index 291144c284fb..f7900e75d230 100644 +--- a/tools/testing/selftests/lib.mk ++++ b/tools/testing/selftests/lib.mk +@@ -20,7 +20,7 @@ CLANG_TARGET_FLAGS := $(CLANG_TARGET_FLAGS_$(ARCH)) + + ifeq ($(CROSS_COMPILE),) + ifeq ($(CLANG_TARGET_FLAGS),) +-$(error Specify CROSS_COMPILE or add '--target=' option to lib.mk ++$(error Specify CROSS_COMPILE or add '--target=' option to lib.mk) + else + CLANG_FLAGS += --target=$(CLANG_TARGET_FLAGS) + endif # CLANG_TARGET_FLAGS +-- +2.39.0 + diff --git a/queue-6.1/loongarch-get-frame-info-in-unwind_start-when-regs-i.patch b/queue-6.1/loongarch-get-frame-info-in-unwind_start-when-regs-i.patch new file mode 100644 index 00000000000..01892508519 --- /dev/null +++ b/queue-6.1/loongarch-get-frame-info-in-unwind_start-when-regs-i.patch @@ -0,0 +1,101 @@ +From 4d0c27a7175599d5a02d0611f42c0aa72e06ccc3 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Tue, 17 Jan 2023 11:42:16 +0800 +Subject: LoongArch: Get frame info in unwind_start() when regs is not + available + +From: Jinyang He + +[ Upstream commit 429a9671f235c94fc4b5d6687308714b74adc820 ] + +At unwind_start(), it is better to get its frame info here rather than +get them outside, even we don't have 'regs'. In this way we can simply +use unwind_{start, next_frame, done} outside. + +Signed-off-by: Jinyang He +Signed-off-by: Huacai Chen +Signed-off-by: Sasha Levin +--- + arch/loongarch/kernel/process.c | 12 +++--------- + arch/loongarch/kernel/unwind_guess.c | 6 ++++++ + arch/loongarch/kernel/unwind_prologue.c | 16 +++++++++++++--- + 3 files changed, 22 insertions(+), 12 deletions(-) + +diff --git a/arch/loongarch/kernel/process.c b/arch/loongarch/kernel/process.c +index ddb8ba4eb399..90a5de746332 100644 +--- a/arch/loongarch/kernel/process.c ++++ b/arch/loongarch/kernel/process.c +@@ -185,20 +185,14 @@ int copy_thread(struct task_struct *p, const struct kernel_clone_args *args) + + unsigned long __get_wchan(struct task_struct *task) + { +- unsigned long pc; ++ unsigned long pc = 0; + struct unwind_state state; + + if (!try_get_task_stack(task)) + return 0; + +- unwind_start(&state, task, NULL); +- state.sp = thread_saved_fp(task); +- get_stack_info(state.sp, state.task, &state.stack_info); +- state.pc = thread_saved_ra(task); +-#ifdef CONFIG_UNWINDER_PROLOGUE +- state.type = UNWINDER_PROLOGUE; +-#endif +- for (; !unwind_done(&state); unwind_next_frame(&state)) { ++ for (unwind_start(&state, task, NULL); ++ !unwind_done(&state); unwind_next_frame(&state)) { + pc = unwind_get_return_address(&state); + if (!pc) + break; +diff --git a/arch/loongarch/kernel/unwind_guess.c b/arch/loongarch/kernel/unwind_guess.c +index 5afa6064d73e..0c20e5184de6 100644 +--- a/arch/loongarch/kernel/unwind_guess.c ++++ b/arch/loongarch/kernel/unwind_guess.c +@@ -25,6 +25,12 @@ void unwind_start(struct unwind_state *state, struct task_struct *task, + if (regs) { + state->sp = regs->regs[3]; + state->pc = regs->csr_era; ++ } else if (task && task != current) { ++ state->sp = thread_saved_fp(task); ++ state->pc = thread_saved_ra(task); ++ } else { ++ state->sp = (unsigned long)__builtin_frame_address(0); ++ state->pc = (unsigned long)__builtin_return_address(0); + } + + state->task = task; +diff --git a/arch/loongarch/kernel/unwind_prologue.c b/arch/loongarch/kernel/unwind_prologue.c +index 4571c3c87cd4..1c5b65756144 100644 +--- a/arch/loongarch/kernel/unwind_prologue.c ++++ b/arch/loongarch/kernel/unwind_prologue.c +@@ -111,12 +111,22 @@ void unwind_start(struct unwind_state *state, struct task_struct *task, + struct pt_regs *regs) + { + memset(state, 0, sizeof(*state)); ++ state->type = UNWINDER_PROLOGUE; + +- if (regs && __kernel_text_address(regs->csr_era)) { +- state->pc = regs->csr_era; ++ if (regs) { + state->sp = regs->regs[3]; ++ state->pc = regs->csr_era; + state->ra = regs->regs[1]; +- state->type = UNWINDER_PROLOGUE; ++ if (!__kernel_text_address(state->pc)) ++ state->type = UNWINDER_GUESS; ++ } else if (task && task != current) { ++ state->sp = thread_saved_fp(task); ++ state->pc = thread_saved_ra(task); ++ state->ra = 0; ++ } else { ++ state->sp = (unsigned long)__builtin_frame_address(0); ++ state->pc = (unsigned long)__builtin_return_address(0); ++ state->ra = 0; + } + + state->task = task; +-- +2.39.0 + diff --git a/queue-6.1/mac80211-fix-mlo-address-translation-for-multiple-bs.patch b/queue-6.1/mac80211-fix-mlo-address-translation-for-multiple-bs.patch new file mode 100644 index 00000000000..afbebac53da --- /dev/null +++ b/queue-6.1/mac80211-fix-mlo-address-translation-for-multiple-bs.patch @@ -0,0 +1,43 @@ +From 75d2a851e8ff03827b0a72cfdd64003cd6459d18 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Thu, 8 Dec 2022 09:30:50 +0530 +Subject: mac80211: Fix MLO address translation for multiple bss case + +From: Sriram R + +[ Upstream commit fa22b51ace8aa106267636f36170e940e676809c ] + +When multiple interfaces are present in the local interface +list, new skb copy is taken before rx processing except for +the first interface. The address translation happens each +time only on the original skb since the hdr pointer is not +updated properly to the newly created skb. + +As a result frames start to drop in userspace when address +based checks or search fails. + +Signed-off-by: Sriram R +Link: https://lore.kernel.org/r/20221208040050.25922-1-quic_srirrama@quicinc.com +Signed-off-by: Johannes Berg +Signed-off-by: Sasha Levin +--- + net/mac80211/rx.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c +index 3262ebb24092..8f0d7c666df7 100644 +--- a/net/mac80211/rx.c ++++ b/net/mac80211/rx.c +@@ -4859,6 +4859,9 @@ static bool ieee80211_prepare_and_rx_handle(struct ieee80211_rx_data *rx, + */ + shwt = skb_hwtstamps(rx->skb); + shwt->hwtstamp = skb_hwtstamps(skb)->hwtstamp; ++ ++ /* Update the hdr pointer to the new skb for translation below */ ++ hdr = (struct ieee80211_hdr *)rx->skb->data; + } + + if (unlikely(rx->sta && rx->sta->sta.mlo)) { +-- +2.39.0 + diff --git a/queue-6.1/nvme-apple-only-reset-the-controller-when-rtkit-is-r.patch b/queue-6.1/nvme-apple-only-reset-the-controller-when-rtkit-is-r.patch new file mode 100644 index 00000000000..a2791552c8f --- /dev/null +++ b/queue-6.1/nvme-apple-only-reset-the-controller-when-rtkit-is-r.patch @@ -0,0 +1,42 @@ +From f8123bbc8e8d844de122140803678982f6f573fd Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Tue, 17 Jan 2023 19:25:01 +0100 +Subject: nvme-apple: only reset the controller when RTKit is running + +From: Janne Grunau + +[ Upstream commit c0a4a1eafbd48e02829045bba3e6163c03037276 ] + +NVMe controller register access hangs indefinitely when the co-processor +is not running. A missed reset is preferable over a hanging thread since +it could be recoverable. + +Signed-off-by: Janne Grunau +Signed-off-by: Christoph Hellwig +Signed-off-by: Sasha Levin +--- + drivers/nvme/host/apple.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/drivers/nvme/host/apple.c b/drivers/nvme/host/apple.c +index ff8b083dc5c6..262d2b60ac6d 100644 +--- a/drivers/nvme/host/apple.c ++++ b/drivers/nvme/host/apple.c +@@ -987,11 +987,11 @@ static void apple_nvme_reset_work(struct work_struct *work) + goto out; + } + +- if (anv->ctrl.ctrl_config & NVME_CC_ENABLE) +- apple_nvme_disable(anv, false); +- + /* RTKit must be shut down cleanly for the (soft)-reset to work */ + if (apple_rtkit_is_running(anv->rtk)) { ++ /* reset the controller if it is enabled */ ++ if (anv->ctrl.ctrl_config & NVME_CC_ENABLE) ++ apple_nvme_disable(anv, false); + dev_dbg(anv->dev, "Trying to shut down RTKit before reset."); + ret = apple_rtkit_shutdown(anv->rtk); + if (ret) +-- +2.39.0 + diff --git a/queue-6.1/s390-workaround-invalid-gcc-11-out-of-bounds-read-wa.patch b/queue-6.1/s390-workaround-invalid-gcc-11-out-of-bounds-read-wa.patch new file mode 100644 index 00000000000..31fed47b536 --- /dev/null +++ b/queue-6.1/s390-workaround-invalid-gcc-11-out-of-bounds-read-wa.patch @@ -0,0 +1,62 @@ +From dbddfb7479d5f400288fe93e8c7669ba06d7f40e Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Tue, 17 Jan 2023 19:00:59 +0100 +Subject: s390: workaround invalid gcc-11 out of bounds read warning +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: Heiko Carstens + +[ Upstream commit 41e1992665a2701fa025a8b76970c43b4148446f ] + +GCC 11.1.0 and 11.2.0 generate a wrong warning when compiling the +kernel e.g. with allmodconfig: + +arch/s390/kernel/setup.c: In function ‘setup_lowcore_dat_on’: +./include/linux/fortify-string.h:57:33: error: ‘__builtin_memcpy’ reading 128 bytes from a region of size 0 [-Werror=stringop-overread] +... +arch/s390/kernel/setup.c:526:9: note: in expansion of macro ‘memcpy’ + 526 | memcpy(abs_lc->cregs_save_area, S390_lowcore.cregs_save_area, + | ^~~~~~ + +This could be addressed by using absolute_pointer() with the +S390_lowcore macro, but this is not a good idea since this generates +worse code for performance critical paths. + +Therefore simply use a for loop to copy the array in question and get +rid of the warning. + +Reported-by: Geert Uytterhoeven +Signed-off-by: Heiko Carstens +Signed-off-by: Sasha Levin +--- + arch/s390/kernel/setup.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c +index ab19ddb09d65..2ec5f1e0312f 100644 +--- a/arch/s390/kernel/setup.c ++++ b/arch/s390/kernel/setup.c +@@ -507,6 +507,7 @@ static void __init setup_lowcore_dat_on(void) + { + struct lowcore *abs_lc; + unsigned long flags; ++ int i; + + __ctl_clear_bit(0, 28); + S390_lowcore.external_new_psw.mask |= PSW_MASK_DAT; +@@ -521,8 +522,8 @@ static void __init setup_lowcore_dat_on(void) + abs_lc = get_abs_lowcore(&flags); + abs_lc->restart_flags = RESTART_FLAG_CTLREGS; + abs_lc->program_new_psw = S390_lowcore.program_new_psw; +- memcpy(abs_lc->cregs_save_area, S390_lowcore.cregs_save_area, +- sizeof(abs_lc->cregs_save_area)); ++ for (i = 0; i < 16; i++) ++ abs_lc->cregs_save_area[i] = S390_lowcore.cregs_save_area[i]; + put_abs_lowcore(abs_lc, flags); + } + +-- +2.39.0 + diff --git a/queue-6.1/series b/queue-6.1/series new file mode 100644 index 00000000000..86da3125d82 --- /dev/null +++ b/queue-6.1/series @@ -0,0 +1,23 @@ +arm-dts-imx-fix-pca9547-i2c-mux-node-name.patch +arm-dts-vf610-fix-pca9548-i2c-mux-node-names.patch +arm64-dts-freescale-fix-pca954x-i2c-mux-node-names.patch +arm64-dts-imx8mq-thor96-fix-no-mmc-property-for-sdhc.patch +firmware-arm_scmi-clear-stale-xfer-hdr.status.patch +bpf-skip-task-with-pid-1-in-send_signal_common.patch +erofs-zmap.c-fix-incorrect-offset-calculation.patch +mac80211-fix-mlo-address-translation-for-multiple-bs.patch +arm64-dts-msm8994-angler-fix-the-memory-map.patch +arm-omap1-fix-building-gpio15xx.patch +kselftest-fix-error-message-for-unconfigured-llvm-bu.patch +erofs-clean-up-parsing-of-fscache-related-options.patch +blk-cgroup-fix-missing-pd_online_fn-while-activating.patch +loongarch-get-frame-info-in-unwind_start-when-regs-i.patch +acpi-video-add-backlight-native-dmi-quirk-for-acer-a.patch +block-fix-hctx-checks-for-batch-allocation.patch +s390-workaround-invalid-gcc-11-out-of-bounds-read-wa.patch +hid-uclogic-add-support-for-xp-pen-deco-01-v2.patch +hid-playstation-sanity-check-dualsense-calibration-d.patch +dmaengine-imx-sdma-fix-a-possible-memory-leak-in-sdm.patch +gpiolib-acpi-allow-ignoring-wake-capability-on-pins-.patch +cifs-fix-return-of-uninitialized-rc-in-dfs_cache_upd.patch +nvme-apple-only-reset-the-controller-when-rtkit-is-r.patch