aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJia-Ju Bai <baijiaju1990@gmail.com>2018-07-27 11:32:36 -0700
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2018-07-27 11:59:06 -0700
commit673831da643c31756622963585fc9d6dbb5d3a37 (patch)
tree8f82fe1c0f69fe1fd6494ce133509f594a1272a3
parentInput: wdt87xx_i2c - replace mdelay() with msleep() in wdt87xx_resume() (diff)
downloadlinux-dev-673831da643c31756622963585fc9d6dbb5d3a37.tar.xz
linux-dev-673831da643c31756622963585fc9d6dbb5d3a37.zip
Input: keyspan_remote - replace GFP_ATOMIC with GFP_KERNEL in keyspan_probe()
keyspan_probe() is never called in atomic context. It calls usb_alloc_coherent() with GFP_ATOMIC, which is not necessary. GFP_ATOMIC can be replaced with GFP_KERNEL. This is found by a static analysis tool named DCNS written by myself. Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
-rw-r--r--drivers/input/misc/keyspan_remote.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/input/misc/keyspan_remote.c b/drivers/input/misc/keyspan_remote.c
index 67482b248b2d..a8937ceac66a 100644
--- a/drivers/input/misc/keyspan_remote.c
+++ b/drivers/input/misc/keyspan_remote.c
@@ -466,7 +466,7 @@ static int keyspan_probe(struct usb_interface *interface, const struct usb_devic
remote->in_endpoint = endpoint;
remote->toggle = -1; /* Set to -1 so we will always not match the toggle from the first remote message. */
- remote->in_buffer = usb_alloc_coherent(udev, RECV_SIZE, GFP_ATOMIC, &remote->in_dma);
+ remote->in_buffer = usb_alloc_coherent(udev, RECV_SIZE, GFP_KERNEL, &remote->in_dma);
if (!remote->in_buffer) {
error = -ENOMEM;
goto fail1;