[Intel-gfx] [PATCH] drm/i915/gtt: Pull global wc page stash under its own locking

Chris Wilson chris at chris-wilson.co.uk
Wed Jul 4 14:24:07 UTC 2018


Quoting Tvrtko Ursulin (2018-07-04 14:59:31)
> 
> On 04/07/2018 14:15, Chris Wilson wrote:
> > Quoting Chris Wilson (2018-07-04 13:55:13)
> >> Quoting Chris Wilson (2018-07-04 13:53:54)
> >>> Quoting Tvrtko Ursulin (2018-07-04 13:48:18)
> >>>>>    
> >>>>> -     if (stash.nr) {
> >>>>> -             int nr = min_t(int, stash.nr, pagevec_space(pvec));
> >>>>> -             struct page **pages = stash.pages + stash.nr - nr;
> >>>>> +     if (stash->nr && !set_pages_array_wc(stash->pages, stash->nr)) {
> >>>>
> >>>> Previously the test was for pages which obviously the local thread
> >>>> owned. Now I am not sure if the condition says.
> >>>
> >>> Still owned by the local thread.
> >>
> >> Actually, no. I need to drop the mutex for the allocation. So back to
> >> onstack stash.
> > 
> > Worse, I drop the mutex up one level around a few other kmallocs, looks
> > like I need more locking down here.
> 
> Or revert and come back to it at more leisurely moment?

Nah, just need to pay more attention which parts of the patch were
required. No one will notice that a suppressed test is failing slightly
differently...
-Chris


More information about the Intel-gfx mailing list