[Intel-gfx] [PATCH 1/6] igt_kms: don't leak the mmap used for cairo
Paulo Zanoni
przanoni at gmail.com
Thu Jan 2 17:44:15 CET 2014
2013/12/31 Chris Wilson <chris at chris-wilson.co.uk>:
> 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.
Yay \o/
I confirm your patch fixes the leak. Thanks!!
> -Chris
>
> --
> Chris Wilson, Intel Open Source Technology Centre
--
Paulo Zanoni
More information about the Intel-gfx
mailing list