]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.19-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 10 Dec 2019 10:36:02 +0000 (11:36 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 10 Dec 2019 10:36:02 +0000 (11:36 +0100)
added patches:
can-ucan-fix-non-atomic-allocation-in-completion-handler.patch

queue-4.19/can-ucan-fix-non-atomic-allocation-in-completion-handler.patch [new file with mode: 0644]
queue-4.19/series

diff --git a/queue-4.19/can-ucan-fix-non-atomic-allocation-in-completion-handler.patch b/queue-4.19/can-ucan-fix-non-atomic-allocation-in-completion-handler.patch
new file mode 100644 (file)
index 0000000..a84e6ba
--- /dev/null
@@ -0,0 +1,36 @@
+From 870db5d1015c8bd63e93b579e857223c96249ff7 Mon Sep 17 00:00:00 2001
+From: Johan Hovold <johan@kernel.org>
+Date: Thu, 28 Nov 2019 19:26:03 +0100
+Subject: can: ucan: fix non-atomic allocation in completion handler
+
+From: Johan Hovold <johan@kernel.org>
+
+commit 870db5d1015c8bd63e93b579e857223c96249ff7 upstream.
+
+USB completion handlers are called in atomic context and must
+specifically not allocate memory using GFP_KERNEL.
+
+Fixes: 9f2d3eae88d2 ("can: ucan: add driver for Theobroma Systems UCAN devices")
+Cc: stable <stable@vger.kernel.org>     # 4.19
+Cc: Jakob Unterwurzacher <jakob.unterwurzacher@theobroma-systems.com>
+Cc: Martin Elshuber <martin.elshuber@theobroma-systems.com>
+Cc: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
+Signed-off-by: Johan Hovold <johan@kernel.org>
+Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/net/can/usb/ucan.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/net/can/usb/ucan.c
++++ b/drivers/net/can/usb/ucan.c
+@@ -796,7 +796,7 @@ resubmit:
+                         up);
+       usb_anchor_urb(urb, &up->rx_urbs);
+-      ret = usb_submit_urb(urb, GFP_KERNEL);
++      ret = usb_submit_urb(urb, GFP_ATOMIC);
+       if (ret < 0) {
+               netdev_err(up->netdev,
index e1d85d0ee44c5a5f9c7f33e00c5040bc856527c5..d96f03ac353239320da81aaedae00ecb9405c2f5 100644 (file)
@@ -239,3 +239,4 @@ crypto-ecdh-fix-big-endian-bug-in-ecc-library.patch
 crypto-user-fix-memory-leak-in-crypto_report.patch
 spi-atmel-fix-cs-high-support.patch
 mwifiex-update-set_mac_address-logic.patch
+can-ucan-fix-non-atomic-allocation-in-completion-handler.patch