[Intel-gfx] [PATCH] drm: fix call_kern.cocci warnings (fwd)

Julia Lawall julia.lawall at lip6.fr
Wed Oct 24 18:57:27 UTC 2018


The containing function is called with a spin_lock held, so GFP_KERNEL
can't be used.

julia

---------- Forwarded message ----------
Date: Tue, 23 Oct 2018 17:14:25 +0800
From: kbuild test robot <lkp at intel.com>
To: kbuild at 01.org
Cc: Julia Lawall <julia.lawall at lip6.fr>
Subject: [PATCH] drm: fix call_kern.cocci warnings

CC: kbuild-all at 01.org
CC: intel-gfx at lists.freedesktop.org
CC: dri-devel at lists.freedesktop.org
TO: Chunming Zhou <david1.zhou at amd.com>
CC: "Christian König" <easy2remember.chk at googlemail.com>
CC: Gustavo Padovan <gustavo at padovan.org>
CC: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
CC: Sean Paul <sean at poorly.run>
CC: David Airlie <airlied at linux.ie>
CC: dri-devel at lists.freedesktop.org
CC: linux-kernel at vger.kernel.org

From: kbuild test robot <fengguang.wu at intel.com>

drivers/gpu/drm/drm_syncobj.c:202:4-14: ERROR: function drm_syncobj_find_signal_pt_for_point called on line 390 inside lock on line 389 but uses GFP_KERNEL

 Find functions that refer to GFP_KERNEL but are called with locks held.

Semantic patch information:
 The proposed change of converting the GFP_KERNEL is not necessarily the
 correct one.  It may be desired to unlock the lock, or to not call the
 function under the lock in the first place.

Generated by: scripts/coccinelle/locks/call_kern.cocci

Fixes: 48197bc564c7 ("drm: add syncobj timeline support v9")
CC: Chunming Zhou <david1.zhou at amd.com>
Signed-off-by: kbuild test robot <fengguang.wu at intel.com>
---

tree:   git://anongit.freedesktop.org/drm/drm-tip drm-tip
head:   8d7ffd2298c607c3e1a16f94d51450d7940fd6a7
commit: 48197bc564c7a1888c86024a1ba4f956e0ec2300 [1968/2033] drm: add syncobj timeline support v9
:::::: branch date: 4 hours ago
:::::: commit date: 5 days ago

Please take the patch only if it's a positive warning. Thanks!

 drm_syncobj.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/gpu/drm/drm_syncobj.c
+++ b/drivers/gpu/drm/drm_syncobj.c
@@ -199,7 +199,7 @@ static struct dma_fence
 	    (point <= syncobj->timeline)) {
 		struct drm_syncobj_stub_fence *fence =
 			kzalloc(sizeof(struct drm_syncobj_stub_fence),
-				GFP_KERNEL);
+				GFP_ATOMIC);

 		if (!fence)
 			return NULL;


More information about the Intel-gfx mailing list