aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-5.4/950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch
diff options
context:
space:
mode:
authorPetr Štetiar <ynezz@true.cz>2020-06-09 14:18:25 +0200
committerPetr Štetiar <ynezz@true.cz>2020-06-09 16:59:33 +0200
commite5aa498acb847320a382034ba0b9cfc55e6f13ca (patch)
treefac56950bd2af2c34cd8705b55040ebd0f5042a9 /target/linux/bcm27xx/patches-5.4/950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch
parentdf6a33a8d4115fcb7edd048f7dbfea054e9477b4 (diff)
downloadupstream-e5aa498acb847320a382034ba0b9cfc55e6f13ca.tar.gz
upstream-e5aa498acb847320a382034ba0b9cfc55e6f13ca.tar.bz2
upstream-e5aa498acb847320a382034ba0b9cfc55e6f13ca.zip
kernel: bump 5.4 to 5.4.45
Fixes CVE-2020-10757 via upstream commit df4988aa1c96 ("mm: Fix mremap not considering huge pmd devmap"). Resolved merge conflict in the following patches: bcm27xx: 950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch Refreshed patches, removed upstreamed patch: generic: 751-v5.8-net-dsa-mt7530-set-CPU-port-to-fallback-mode.patch generic: 754-v5.7-net-dsa-mt7530-fix-roaming-from-DSA-user-ports.patch Run tested: qemu-x86-64 Build tested: x86/64, imx6, sunxi/a53 Signed-off-by: Petr Štetiar <ynezz@true.cz>
Diffstat (limited to 'target/linux/bcm27xx/patches-5.4/950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch')
-rw-r--r--target/linux/bcm27xx/patches-5.4/950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch10
1 files changed, 6 insertions, 4 deletions
diff --git a/target/linux/bcm27xx/patches-5.4/950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch b/target/linux/bcm27xx/patches-5.4/950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch
index 4286abf01a..bb32faef72 100644
--- a/target/linux/bcm27xx/patches-5.4/950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch
+++ b/target/linux/bcm27xx/patches-5.4/950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch
@@ -37,12 +37,14 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
gpiod_err(desc,
"%s: tried to set a GPIO tied to an IRQ as output\n",
__func__);
-@@ -3894,7 +3896,7 @@ int gpiochip_lock_as_irq(struct gpio_chi
- }
+@@ -3895,8 +3897,8 @@ int gpiochip_lock_as_irq(struct gpio_chi
}
-- if (test_bit(FLAG_IS_OUT, &desc->flags)) {
-+ if (dont_test_bit(FLAG_IS_OUT, &desc->flags)) {
+ /* To be valid for IRQ the line needs to be input or open drain */
+- if (test_bit(FLAG_IS_OUT, &desc->flags) &&
+- !test_bit(FLAG_OPEN_DRAIN, &desc->flags)) {
++ if (dont_test_bit(FLAG_IS_OUT, &desc->flags) &&
++ !dont_test_bit(FLAG_OPEN_DRAIN, &desc->flags)) {
chip_err(chip,
"%s: tried to flag a GPIO set as output for IRQ\n",
__func__);