lkml.org 
[lkml]   [2018]   [Oct]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] drm: fix call_kern.cocci warnings (fwd)
From
Date
Op 24-10-18 om 20:57 schreef Julia Lawall:
> 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@intel.com>
> To: kbuild@01.org
> Cc: Julia Lawall <julia.lawall@lip6.fr>
> Subject: [PATCH] drm: fix call_kern.cocci warnings
>
> CC: kbuild-all@01.org
> CC: intel-gfx@lists.freedesktop.org
> CC: dri-devel@lists.freedesktop.org
> TO: Chunming Zhou <david1.zhou@amd.com>
> CC: "Christian König" <easy2remember.chk@googlemail.com>
> CC: Gustavo Padovan <gustavo@padovan.org>
> CC: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> CC: Sean Paul <sean@poorly.run>
> CC: David Airlie <airlied@linux.ie>
> CC: dri-devel@lists.freedesktop.org
> CC: linux-kernel@vger.kernel.org
>
> From: kbuild test robot <fengguang.wu@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@amd.com>
> Signed-off-by: kbuild test robot <fengguang.wu@intel.com>
The issue appears to be real and the patch looks sane. Chunming Zhou, do you want to fix it like this, or preallocate
a fence obj? If former, just ack. :)

~Maarten
>
> 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;


\
 
 \ /
  Last update: 2018-10-25 09:51    [W:0.063 / U:40.260 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site