Hi Maarten:

Thanks for the reply. 😊 Have your patches been merged into the drm-intel? (The 
new i915_gem_object_ggtt_pin() you mentioned in the email). Also, we might go 
on-demand pin recently in the suspend/resume support. In that case, I guess I 
need to review my patches again based on the new mechanism. Wrt your concern, 
my understanding is ww dance is for recording the related locks in a section. 
When a deadlock happens, we can rewind the locks recorded in a ww dance and 
rewind them. In the current code, the context is always pinned. So we don’t 
need to worry about the context as what you said. For preparing_shadow_wa_ctx, 
the gem object will be newly created whenever scan a execlist context and it 
will be destroyed when the context is scheduled-out. I think in that case, we 
need a separate ww dance.
Thanks, Zhi.

-----Original Message-----
From: Maarten Lankhorst <maarten.lankho...@linux.intel.com>
Sent: Wednesday, September 30, 2020 2:55 PM
To: Wang, Zhi A <zhi.a.w...@intel.com>; Joonas Lahtinen 
<joonas.lahti...@linux.intel.com>; Nikula, Jani <jani.nik...@intel.com>; 
intel-gfx <intel-gfx@lists.freedesktop.org>; Yuan, Hang <hang.y...@intel.com>; 
Lv, Zhiyuan <zhiyuan...@intel.com>; intel-gvt-dev 
<intel-gvt-...@lists.freedesktop.org>
Subject: Re: [Intel-gfx] [PULL] topic/gvt-ww-lock

Hey,

Op 22-09-2020 om 13:51 schreef Wang, Zhi A:
>
> Hi,
>
> Here's the patch which introduces GVT-g ww lock support against 
> drm-intel-gt-next branch.
>
> Thanks
>
> --
>
> The following changes since commit 4316b19dee27cc5cd34a95fdbc0a3a5237507701:
>
>   drm/i915: Fix uninitialised variable in
> intel_context_create_request. (2020-09-21 11:09:46 +0200)
>
> are available in the git repository at:
>
>   https://github.com/intel/gvt-linux.git tags/gvt-ww-lock-09-22-2020
>
> for you to fetch changes up to e1b49ae155451aaa039eeb23fce808c71a038283:
>
>   drm/i915/gvt: Introduce per object locking in GVT scheduler.
> (2020-09-22 12:09:56 +0300)
>
> ----------------------------------------------------------------
> gvt-ww-lock-09-22-2020:
>
> - Introduce ww lock support into GVT-g.
>
> ----------------------------------------------------------------
> Zhi Wang (1):
>       drm/i915/gvt: Introduce per object locking in GVT scheduler.
>
>  drivers/gpu/drm/i915/gvt/scheduler.c | 68
> ++++++++++++++++++++++++++++++------
>  1 file changed, 57 insertions(+), 11 deletions(-)

I've taken a look at this branch, and I have some feedback.

Adding ww_ctx blindly like is done doesn't work. For example I'm working on a 
patch that adds ww handling to i915_gem_object_ggtt_pin(), so you don't have to 
perform manually in prepare_shadow_wa_ctx(). intel_context_pin() already has a 
ww dance, you can keep calling it without open coding it. If you do decide to 
call it manually, intel_context_put would have to be called after ctx_fini. 
Cheers, Maarten
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to