]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.14-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 19 May 2022 14:30:04 +0000 (16:30 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 19 May 2022 14:30:04 +0000 (16:30 +0200)
added patches:
alsa-wavefront-proper-check-of-get_user-error.patch

queue-4.14/alsa-wavefront-proper-check-of-get_user-error.patch [new file with mode: 0644]
queue-4.14/series

diff --git a/queue-4.14/alsa-wavefront-proper-check-of-get_user-error.patch b/queue-4.14/alsa-wavefront-proper-check-of-get_user-error.patch
new file mode 100644 (file)
index 0000000..7b8fa3a
--- /dev/null
@@ -0,0 +1,36 @@
+From a34ae6c0660d3b96b0055f68ef74dc9478852245 Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 10 May 2022 12:36:26 +0200
+Subject: ALSA: wavefront: Proper check of get_user() error
+
+From: Takashi Iwai <tiwai@suse.de>
+
+commit a34ae6c0660d3b96b0055f68ef74dc9478852245 upstream.
+
+The antient ISA wavefront driver reads its sample patch data (uploaded
+over an ioctl) via __get_user() with no good reason; likely just for
+some performance optimizations in the past.  Let's change this to the
+standard get_user() and the error check for handling the fault case
+properly.
+
+Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
+Cc: <stable@vger.kernel.org>
+Link: https://lore.kernel.org/r/20220510103626.16635-1-tiwai@suse.de
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ sound/isa/wavefront/wavefront_synth.c |    3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/sound/isa/wavefront/wavefront_synth.c
++++ b/sound/isa/wavefront/wavefront_synth.c
+@@ -1092,7 +1092,8 @@ wavefront_send_sample (snd_wavefront_t *
+                       if (dataptr < data_end) {
+               
+-                              __get_user (sample_short, dataptr);
++                              if (get_user(sample_short, dataptr))
++                                      return -EFAULT;
+                               dataptr += skip;
+               
+                               if (data_is_unsigned) { /* GUS ? */
index 6bb852324d4d789c3ef33875d379769e9a891cf9..ecdb74ba367b2f3d7ff0f8aad41c648872093e0c 100644 (file)
@@ -9,3 +9,4 @@ arm-9191-1-arm-stacktrace-kasan-silence-kasan-warnin.patch
 mmc-core-specify-timeouts-for-bkops-and-cache_flush-for-emmc.patch
 mmc-block-use-generic_cmd6_time-when-modifying-inand_cmd38_arg_ext_csd.patch
 mmc-core-default-to-generic_cmd6_time-as-timeout-in-__mmc_switch.patch
+alsa-wavefront-proper-check-of-get_user-error.patch