[Intel-gfx] [PATCH 0/3] Reduce the time for which 'struct_mutex' is held

Ankitprasad Sharma ankitprasad.r.sharma at intel.com
Thu Aug 27 03:48:20 PDT 2015


On Wed, 2015-08-26 at 11:25 +0200, Daniel Vetter wrote:
> On Mon, Aug 24, 2015 at 05:28:13PM +0530, ankitprasad.r.sharma at intel.com wrote:
> > From: Ankitprasad Sharma <ankitprasad.r.sharma at intel.com>
> > 
> > We are trying to reduce the time for which the global 'struct_mutex'
> > is locked. Execbuffer ioctl is one place where it is generally held
> > for the longest time. And sometimes because of this occasional 
> > glitches/flickers are observed in 60 fps playback (due to miss of
> > V-blank intervals) as page flip calls gets blocked/delayed because the
> > 'struct_mutex' is already locked.
> > 
> > For this, we have exposed two new flags in GEM_CREATE ioctl, to pre-populate
> > the object with system memory pages and also do an immediate clflush for the
> > new pages.
> > 
> > The third patch too tries to reduce the 'struct_mutex' lock time by
> > moving only those objects to CPU domain in put_pages(), that can either
> > be used in the future or had a CPU mapping.
> > 
> > This series is based on an earlier series of Stolen Memory patches,
> > extending the GEM_CREATE ioctl further
> > http://lists.freedesktop.org/archives/intel-gfx/2015-July/072199.html
> > 
> > Ankitprasad Sharma (2):
> >   drm/i915: Support for pre-populating the object with system pages
> >   drm/i915: Support for the clflush of pre-populated pages
> > 
> > Chris Wilson (1):
> >   drm/i915: Only move to the CPU write domain if keeping the GTT pages
> 
> Usual broken maintainer record: Needs igt and userspace. And for the case
> of the put_pages optimization probably really nasty igt.

Yes, the igt is work in progress. We will extend the gem_create igt for
1st two patches and we are trying to come up with a new igt for the case
of put_pages optimization.

Also a query regarding the userspace,
Where to do the userspace changes? (mesa driver?) and
Who should do the implementation? (Should we do it?) 

Thanks,
Ankit




More information about the Intel-gfx mailing list