diff options
author | Jia-Ju Bai <baijiaju1990@gmail.com> | 2018-07-27 14:32:36 -0400 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2018-07-27 14:59:06 -0400 |
commit | 673831da643c31756622963585fc9d6dbb5d3a37 (patch) | |
tree | 8f82fe1c0f69fe1fd6494ce133509f594a1272a3 /drivers/input | |
parent | e58650b57ee0078ac8986650febeb55263f9ebdf (diff) |
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>
Diffstat (limited to 'drivers/input')
-rw-r--r-- | drivers/input/misc/keyspan_remote.c | 2 |
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 | |||
466 | remote->in_endpoint = endpoint; | 466 | remote->in_endpoint = endpoint; |
467 | remote->toggle = -1; /* Set to -1 so we will always not match the toggle from the first remote message. */ | 467 | remote->toggle = -1; /* Set to -1 so we will always not match the toggle from the first remote message. */ |
468 | 468 | ||
469 | remote->in_buffer = usb_alloc_coherent(udev, RECV_SIZE, GFP_ATOMIC, &remote->in_dma); | 469 | remote->in_buffer = usb_alloc_coherent(udev, RECV_SIZE, GFP_KERNEL, &remote->in_dma); |
470 | if (!remote->in_buffer) { | 470 | if (!remote->in_buffer) { |
471 | error = -ENOMEM; | 471 | error = -ENOMEM; |
472 | goto fail1; | 472 | goto fail1; |