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

Chris Wilson chris at chris-wilson.co.uk
Mon Dec 30 19:16:20 CET 2013


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.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre



More information about the Intel-gfx mailing list