From c5e92f2294e32565a6bb0be5209b5b28dffb958f Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Fri, 26 Jul 2024 08:29:16 +0200 Subject: [PATCH] drop broken gpio patch from 4.19 and 5.4 --- ...fix-pca953x_irq_bus_sync_unlock-race.patch | 56 ------------------- queue-4.19/series | 1 - ...fix-pca953x_irq_bus_sync_unlock-race.patch | 56 ------------------- queue-5.4/series | 1 - 4 files changed, 114 deletions(-) delete mode 100644 queue-4.19/gpio-pca953x-fix-pca953x_irq_bus_sync_unlock-race.patch delete mode 100644 queue-5.4/gpio-pca953x-fix-pca953x_irq_bus_sync_unlock-race.patch diff --git a/queue-4.19/gpio-pca953x-fix-pca953x_irq_bus_sync_unlock-race.patch b/queue-4.19/gpio-pca953x-fix-pca953x_irq_bus_sync_unlock-race.patch deleted file mode 100644 index 06dda58fd8b..00000000000 --- a/queue-4.19/gpio-pca953x-fix-pca953x_irq_bus_sync_unlock-race.patch +++ /dev/null @@ -1,56 +0,0 @@ -From b8b5a7f210780d8d7ffd6efe0339756db7c8b58e Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Thu, 20 Jun 2024 07:29:15 +0300 -Subject: gpio: pca953x: fix pca953x_irq_bus_sync_unlock race - -From: Ian Ray - -[ Upstream commit bfc6444b57dc7186b6acc964705d7516cbaf3904 ] - -Ensure that `i2c_lock' is held when setting interrupt latch and mask in -pca953x_irq_bus_sync_unlock() in order to avoid races. - -The other (non-probe) call site pca953x_gpio_set_multiple() ensures the -lock is held before calling pca953x_write_regs(). - -The problem occurred when a request raced against irq_bus_sync_unlock() -approximately once per thousand reboots on an i.MX8MP based system. - - * Normal case - - 0-0022: write register AI|3a {03,02,00,00,01} Input latch P0 - 0-0022: write register AI|49 {fc,fd,ff,ff,fe} Interrupt mask P0 - 0-0022: write register AI|08 {ff,00,00,00,00} Output P3 - 0-0022: write register AI|12 {fc,00,00,00,00} Config P3 - - * Race case - - 0-0022: write register AI|08 {ff,00,00,00,00} Output P3 - 0-0022: write register AI|08 {03,02,00,00,01} *** Wrong register *** - 0-0022: write register AI|12 {fc,00,00,00,00} Config P3 - 0-0022: write register AI|49 {fc,fd,ff,ff,fe} Interrupt mask P0 - -Signed-off-by: Ian Ray -Link: https://lore.kernel.org/r/20240620042915.2173-1-ian.ray@gehealthcare.com -Signed-off-by: Bartosz Golaszewski -Signed-off-by: Sasha Levin ---- - drivers/gpio/gpio-pca953x.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/drivers/gpio/gpio-pca953x.c b/drivers/gpio/gpio-pca953x.c -index dc4088a47ab2d..5dcc31e5fb3eb 100644 ---- a/drivers/gpio/gpio-pca953x.c -+++ b/drivers/gpio/gpio-pca953x.c -@@ -489,6 +489,8 @@ static void pca953x_irq_bus_sync_unlock(struct irq_data *d) - u8 invert_irq_mask[MAX_BANK]; - - if (chip->driver_data & PCA_PCAL) { -+ guard(mutex)(&chip->i2c_lock); -+ - /* Enable latch on interrupt-enabled inputs */ - pca953x_write_regs(chip, PCAL953X_IN_LATCH, chip->irq_mask); - --- -2.43.0 - diff --git a/queue-4.19/series b/queue-4.19/series index 390046a8d8d..4d9cb256b00 100644 --- a/queue-4.19/series +++ b/queue-4.19/series @@ -14,7 +14,6 @@ wifi-cfg80211-wext-add-extra-siocsiwscan-data-check.patch input-elantech-fix-touchpad-state-on-resume-for-leno.patch bytcr_rt5640-inverse-jack-detect-for-archos-101-cesi.patch can-kvaser_usb-fix-return-value-for-hif_usb_send_reg.patch -gpio-pca953x-fix-pca953x_irq_bus_sync_unlock-race.patch s390-sclp-fix-sclp_init-cleanup-on-failure.patch alsa-dmaengine_pcm-terminate-dmaengine-before-synchr.patch net-usb-qmi_wwan-add-telit-fn912-compositions.patch diff --git a/queue-5.4/gpio-pca953x-fix-pca953x_irq_bus_sync_unlock-race.patch b/queue-5.4/gpio-pca953x-fix-pca953x_irq_bus_sync_unlock-race.patch deleted file mode 100644 index 0f3ce147f57..00000000000 --- a/queue-5.4/gpio-pca953x-fix-pca953x_irq_bus_sync_unlock-race.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 58a8bf13538c0a1ae8d551eb7f38fb999dc3bebf Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Thu, 20 Jun 2024 07:29:15 +0300 -Subject: gpio: pca953x: fix pca953x_irq_bus_sync_unlock race - -From: Ian Ray - -[ Upstream commit bfc6444b57dc7186b6acc964705d7516cbaf3904 ] - -Ensure that `i2c_lock' is held when setting interrupt latch and mask in -pca953x_irq_bus_sync_unlock() in order to avoid races. - -The other (non-probe) call site pca953x_gpio_set_multiple() ensures the -lock is held before calling pca953x_write_regs(). - -The problem occurred when a request raced against irq_bus_sync_unlock() -approximately once per thousand reboots on an i.MX8MP based system. - - * Normal case - - 0-0022: write register AI|3a {03,02,00,00,01} Input latch P0 - 0-0022: write register AI|49 {fc,fd,ff,ff,fe} Interrupt mask P0 - 0-0022: write register AI|08 {ff,00,00,00,00} Output P3 - 0-0022: write register AI|12 {fc,00,00,00,00} Config P3 - - * Race case - - 0-0022: write register AI|08 {ff,00,00,00,00} Output P3 - 0-0022: write register AI|08 {03,02,00,00,01} *** Wrong register *** - 0-0022: write register AI|12 {fc,00,00,00,00} Config P3 - 0-0022: write register AI|49 {fc,fd,ff,ff,fe} Interrupt mask P0 - -Signed-off-by: Ian Ray -Link: https://lore.kernel.org/r/20240620042915.2173-1-ian.ray@gehealthcare.com -Signed-off-by: Bartosz Golaszewski -Signed-off-by: Sasha Levin ---- - drivers/gpio/gpio-pca953x.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/drivers/gpio/gpio-pca953x.c b/drivers/gpio/gpio-pca953x.c -index c81d73d5e0159..d4c81373929af 100644 ---- a/drivers/gpio/gpio-pca953x.c -+++ b/drivers/gpio/gpio-pca953x.c -@@ -696,6 +696,8 @@ static void pca953x_irq_bus_sync_unlock(struct irq_data *d) - pca953x_read_regs(chip, chip->regs->direction, reg_direction); - - if (chip->driver_data & PCA_PCAL) { -+ guard(mutex)(&chip->i2c_lock); -+ - /* Enable latch on interrupt-enabled inputs */ - pca953x_write_regs(chip, PCAL953X_IN_LATCH, chip->irq_mask); - --- -2.43.0 - diff --git a/queue-5.4/series b/queue-5.4/series index 0531e8e7a22..6cae92d13b1 100644 --- a/queue-5.4/series +++ b/queue-5.4/series @@ -20,7 +20,6 @@ bytcr_rt5640-inverse-jack-detect-for-archos-101-cesi.patch asoc-ti-davinci-mcasp-set-min-period-size-using-fifo.patch asoc-ti-omap-hdmi-fix-too-long-driver-name.patch can-kvaser_usb-fix-return-value-for-hif_usb_send_reg.patch -gpio-pca953x-fix-pca953x_irq_bus_sync_unlock-race.patch s390-sclp-fix-sclp_init-cleanup-on-failure.patch alsa-dmaengine_pcm-terminate-dmaengine-before-synchr.patch net-usb-qmi_wwan-add-telit-fn912-compositions.patch -- 2.47.3