summary refs log tree commit diff
path: root/drivers/misc/ibmvmc.c
diff options
context:
space:
mode:
authorWei Yongjun <weiyongjun1@huawei.com>2018-05-26 09:45:59 +0000
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-07-07 17:35:00 +0200
commit97b715b62e5b4c6edb75d023f556fd09a46cb4e1 (patch)
tree3187a16d1be129d085e84025db20841edcc2f814 /drivers/misc/ibmvmc.c
parent5faecb0162883df2b06965c7e6dd7c42278f7e0d (diff)
downloadlinux-97b715b62e5b4c6edb75d023f556fd09a46cb4e1.tar.gz
misc: ibmvmc: Use GFP_ATOMIC under spin lock
The function alloc_dma_buffer() is called from ibmvmc_add_buffer(),
in which a spin lock be held here, so we should use GFP_ATOMIC when
a lock is held.

Fixes: 0eca353e7ae7 ("misc: IBM Virtual Management Channel Driver (VMC)")
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Reviewed-by: Bryant G. Ly <bryantly@linux.vnet.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/misc/ibmvmc.c')
-rw-r--r--drivers/misc/ibmvmc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/misc/ibmvmc.c b/drivers/misc/ibmvmc.c
index fb83d1375638..8f82bb9d11e2 100644
--- a/drivers/misc/ibmvmc.c
+++ b/drivers/misc/ibmvmc.c
@@ -273,7 +273,7 @@ static void *alloc_dma_buffer(struct vio_dev *vdev, size_t size,
 			      dma_addr_t *dma_handle)
 {
 	/* allocate memory */
-	void *buffer = kzalloc(size, GFP_KERNEL);
+	void *buffer = kzalloc(size, GFP_ATOMIC);
 
 	if (!buffer) {
 		*dma_handle = 0;