[Intel-gfx] [PATCH 1/6] igt_kms: don't leak the mmap used for cairo

Chris Wilson chris at chris-wilson.co.uk
Tue Dec 31 13:32:33 CET 2013


On Mon, Dec 30, 2013 at 06:16:20PM +0000, Chris Wilson wrote:
> On Mon, Dec 30, 2013 at 03:53:10PM -0200, Paulo Zanoni wrote:
> > 2013/12/30 Chris Wilson <chris at chris-wilson.co.uk>:
> > > On Mon, Dec 30, 2013 at 01:56:48PM -0200, Paulo Zanoni wrote:
> > >> From: Paulo Zanoni <paulo.r.zanoni at intel.com>
> > >>
> > >> When we call kmstest_get_cairo_ctx() and create a context, we do a
> > >> gem_mmap. The problem is that we lose the mmap pointer, so we leak it.
> > >> This patch stores the pointer and frees it at kmstest_remove_fb.
> > >>
> > >> Huge test suites like kms_flip do this operation thousands of times,
> > >> which makes the virtual memory size increase until the test suite gets
> > >> killed. Today, without this patch, we can't even run 50% of the
> > >> kms_flip tests due to this problem. To test this, just "./kms_flip",
> > >> then run "top" and sort it by the VIRT column.
> > >
> > > Bleh. kmstest is a bad example of how to handle cairo object lifetimes
> > > and this patch just makes it worse.
> > 
> > I definitely can't say I love the current code, but we need a fix
> > somehow. Do you have any specific suggestions that I could try?
> 
> I have something I can push in the near future.

I've taken care of this GEM bo leak, thanks.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre



More information about the Intel-gfx mailing list