From: Greg Kroah-Hartman Date: Thu, 23 May 2019 09:58:47 +0000 (+0200) Subject: drop broken stm patch X-Git-Tag: v5.1.5~30 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=4dab4e7dc3e6d9a32aa865533ac044000e5c67cf;p=thirdparty%2Fkernel%2Fstable-queue.git drop broken stm patch --- diff --git a/queue-4.14/series b/queue-4.14/series index 68c2dfbd40b..925deadea3f 100644 --- a/queue-4.14/series +++ b/queue-4.14/series @@ -13,7 +13,6 @@ parisc-skip-registering-led-when-running-in-qemu.patch parisc-use-pa_asm_level-in-boot-code.patch parisc-rename-level-to-pa_asm_level-to-avoid-name-clash-with-drbd-code.patch stm-class-fix-channel-free-in-stm-output-free-path.patch -stm-class-fix-channel-bitmap-on-32-bit-systems.patch md-add-mddev-pers-to-avoid-potential-null-pointer-dereference.patch intel_th-msu-fix-single-mode-with-iommu.patch p54-drop-device-reference-count-if-fails-to-enable-device.patch diff --git a/queue-4.14/stm-class-fix-channel-bitmap-on-32-bit-systems.patch b/queue-4.14/stm-class-fix-channel-bitmap-on-32-bit-systems.patch deleted file mode 100644 index 69b4610c4df..00000000000 --- a/queue-4.14/stm-class-fix-channel-bitmap-on-32-bit-systems.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 51e0f227812ed81a368de54157ebe14396b4be03 Mon Sep 17 00:00:00 2001 -From: Alexander Shishkin -Date: Wed, 17 Apr 2019 10:35:35 +0300 -Subject: stm class: Fix channel bitmap on 32-bit systems - -From: Alexander Shishkin - -commit 51e0f227812ed81a368de54157ebe14396b4be03 upstream. - -Commit 7bd1d4093c2f ("stm class: Introduce an abstraction for System Trace -Module devices") naively calculates the channel bitmap size in 64-bit -chunks regardless of the size of underlying unsigned long, making the -bitmap half as big on a 32-bit system. This leads to an out of bounds -access with the upper half of the bitmap. - -Fix this by using BITS_TO_LONGS. While at it, convert to using -struct_size() for the total size calculation of the master struct. - -Signed-off-by: Alexander Shishkin -Fixes: 7bd1d4093c2f ("stm class: Introduce an abstraction for System Trace Module devices") -Reported-by: Mulu He -Cc: stable@vger.kernel.org # v4.4+ -Signed-off-by: Greg Kroah-Hartman - ---- - drivers/hwtracing/stm/core.c | 7 +++---- - 1 file changed, 3 insertions(+), 4 deletions(-) - ---- a/drivers/hwtracing/stm/core.c -+++ b/drivers/hwtracing/stm/core.c -@@ -174,11 +174,10 @@ stm_master(struct stm_device *stm, unsig - static int stp_master_alloc(struct stm_device *stm, unsigned int idx) - { - struct stp_master *master; -- size_t size; - -- size = ALIGN(stm->data->sw_nchannels, 8) / 8; -- size += sizeof(struct stp_master); -- master = kzalloc(size, GFP_ATOMIC); -+ master = kzalloc(struct_size(master, chan_map, -+ BITS_TO_LONGS(stm->data->sw_nchannels)), -+ GFP_ATOMIC); - if (!master) - return -ENOMEM; - diff --git a/queue-4.4/series b/queue-4.4/series index a57b9aaab2b..4882d808a62 100644 --- a/queue-4.4/series +++ b/queue-4.4/series @@ -36,7 +36,6 @@ tipc-switch-order-of-device-registration-to-fix-a-crash.patch tipc-fix-modprobe-tipc-failed-after-switch-order-of-device-registration.patch parisc-rename-level-to-pa_asm_level-to-avoid-name-clash-with-drbd-code.patch stm-class-fix-channel-free-in-stm-output-free-path.patch -stm-class-fix-channel-bitmap-on-32-bit-systems.patch md-add-mddev-pers-to-avoid-potential-null-pointer-dereference.patch intel_th-msu-fix-single-mode-with-iommu.patch of-fix-clang-wunsequenced-for-be32_to_cpu.patch diff --git a/queue-4.4/stm-class-fix-channel-bitmap-on-32-bit-systems.patch b/queue-4.4/stm-class-fix-channel-bitmap-on-32-bit-systems.patch deleted file mode 100644 index 78bb7958bed..00000000000 --- a/queue-4.4/stm-class-fix-channel-bitmap-on-32-bit-systems.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 51e0f227812ed81a368de54157ebe14396b4be03 Mon Sep 17 00:00:00 2001 -From: Alexander Shishkin -Date: Wed, 17 Apr 2019 10:35:35 +0300 -Subject: stm class: Fix channel bitmap on 32-bit systems - -From: Alexander Shishkin - -commit 51e0f227812ed81a368de54157ebe14396b4be03 upstream. - -Commit 7bd1d4093c2f ("stm class: Introduce an abstraction for System Trace -Module devices") naively calculates the channel bitmap size in 64-bit -chunks regardless of the size of underlying unsigned long, making the -bitmap half as big on a 32-bit system. This leads to an out of bounds -access with the upper half of the bitmap. - -Fix this by using BITS_TO_LONGS. While at it, convert to using -struct_size() for the total size calculation of the master struct. - -Signed-off-by: Alexander Shishkin -Fixes: 7bd1d4093c2f ("stm class: Introduce an abstraction for System Trace Module devices") -Reported-by: Mulu He -Cc: stable@vger.kernel.org # v4.4+ -Signed-off-by: Greg Kroah-Hartman - ---- - drivers/hwtracing/stm/core.c | 7 +++---- - 1 file changed, 3 insertions(+), 4 deletions(-) - ---- a/drivers/hwtracing/stm/core.c -+++ b/drivers/hwtracing/stm/core.c -@@ -158,11 +158,10 @@ stm_master(struct stm_device *stm, unsig - static int stp_master_alloc(struct stm_device *stm, unsigned int idx) - { - struct stp_master *master; -- size_t size; - -- size = ALIGN(stm->data->sw_nchannels, 8) / 8; -- size += sizeof(struct stp_master); -- master = kzalloc(size, GFP_ATOMIC); -+ master = kzalloc(struct_size(master, chan_map, -+ BITS_TO_LONGS(stm->data->sw_nchannels)), -+ GFP_ATOMIC); - if (!master) - return -ENOMEM; - diff --git a/queue-4.9/series b/queue-4.9/series index dc3dd66bdb1..887a9ba2217 100644 --- a/queue-4.9/series +++ b/queue-4.9/series @@ -9,7 +9,6 @@ parisc-export-running_on_qemu-symbol-for-modules.patch parisc-skip-registering-led-when-running-in-qemu.patch parisc-rename-level-to-pa_asm_level-to-avoid-name-clash-with-drbd-code.patch stm-class-fix-channel-free-in-stm-output-free-path.patch -stm-class-fix-channel-bitmap-on-32-bit-systems.patch md-add-mddev-pers-to-avoid-potential-null-pointer-dereference.patch intel_th-msu-fix-single-mode-with-iommu.patch p54-drop-device-reference-count-if-fails-to-enable-device.patch diff --git a/queue-4.9/stm-class-fix-channel-bitmap-on-32-bit-systems.patch b/queue-4.9/stm-class-fix-channel-bitmap-on-32-bit-systems.patch deleted file mode 100644 index 69b4610c4df..00000000000 --- a/queue-4.9/stm-class-fix-channel-bitmap-on-32-bit-systems.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 51e0f227812ed81a368de54157ebe14396b4be03 Mon Sep 17 00:00:00 2001 -From: Alexander Shishkin -Date: Wed, 17 Apr 2019 10:35:35 +0300 -Subject: stm class: Fix channel bitmap on 32-bit systems - -From: Alexander Shishkin - -commit 51e0f227812ed81a368de54157ebe14396b4be03 upstream. - -Commit 7bd1d4093c2f ("stm class: Introduce an abstraction for System Trace -Module devices") naively calculates the channel bitmap size in 64-bit -chunks regardless of the size of underlying unsigned long, making the -bitmap half as big on a 32-bit system. This leads to an out of bounds -access with the upper half of the bitmap. - -Fix this by using BITS_TO_LONGS. While at it, convert to using -struct_size() for the total size calculation of the master struct. - -Signed-off-by: Alexander Shishkin -Fixes: 7bd1d4093c2f ("stm class: Introduce an abstraction for System Trace Module devices") -Reported-by: Mulu He -Cc: stable@vger.kernel.org # v4.4+ -Signed-off-by: Greg Kroah-Hartman - ---- - drivers/hwtracing/stm/core.c | 7 +++---- - 1 file changed, 3 insertions(+), 4 deletions(-) - ---- a/drivers/hwtracing/stm/core.c -+++ b/drivers/hwtracing/stm/core.c -@@ -174,11 +174,10 @@ stm_master(struct stm_device *stm, unsig - static int stp_master_alloc(struct stm_device *stm, unsigned int idx) - { - struct stp_master *master; -- size_t size; - -- size = ALIGN(stm->data->sw_nchannels, 8) / 8; -- size += sizeof(struct stp_master); -- master = kzalloc(size, GFP_ATOMIC); -+ master = kzalloc(struct_size(master, chan_map, -+ BITS_TO_LONGS(stm->data->sw_nchannels)), -+ GFP_ATOMIC); - if (!master) - return -ENOMEM; -