[Intel-gfx] [PATCH i-g-t] gem_ppgtt: Test VMA leak on context destruction
Tvrtko Ursulin
tvrtko.ursulin at linux.intel.com
Wed Sep 23 05:36:17 PDT 2015
Hi,
On 09/18/2015 12:17 PM, Thomas Wood wrote:
> On 11 September 2015 at 15:31, Tvrtko Ursulin
> <tvrtko.ursulin at linux.intel.com> wrote:
>> From: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
>>
>> Test that VMAs associated with a context are cleaned up when
>> contexts are destroyed.
>>
>> In practice this emulates the leak seen between fbcon and X server.
>> Every time the X server exits we gain one VMA on the fbcon frame
>> buffer object as externally visible via for example
>> /sys/kernel/debug/dri/0/i915_gem_gtt.
>>
>> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
>> ---
>> tests/gem_ppgtt.c | 80 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
>> 1 file changed, 80 insertions(+)
>>
>> diff --git a/tests/gem_ppgtt.c b/tests/gem_ppgtt.c
>> index 4f6df063214a..363f9d701585 100644
>> --- a/tests/gem_ppgtt.c
>> +++ b/tests/gem_ppgtt.c
>> @@ -265,6 +265,83 @@ static void flink_and_close(void)
>> close(fd2);
>> }
>>
>> +static int grep_name(char *match, int to_match)
>
> This could be added to igt_debugfs.c, as it might be useful for other tests.
I couldn't force myself to do it.
>
>> +{
>> + int fdd, ret, matched;
>> +
>> + fdd = open("/sys/kernel/debug/dri/0/i915_gem_gtt", O_RDONLY);
>
> igt_debugfs_open would be more robust here, as it checks various
> locations for the debugfs and also attempts to mount it if it can't be
> found.
Done.
>
>
>> + igt_assert(fdd >= 0);
>> +
>> + matched = 0;
>> + do {
>> + char ch;
>> +
>> + ret = read(fdd, &ch, 1);
>> + if (ret == 0)
>> + break;
>> + igt_assert(ret == 1);
>> +
>> + if (ch == match[matched])
>> + matched++;
>> + else
>> + matched = 0;
>> + } while (matched < to_match);
>
> igt_debugfs_fopen is also available, which would allow the use of
> getline and strstr here instead, as a slightly simpler implementation.
Also done. Ah not via fopen but open+fdopen... drat..
You want v3 or you can live with v2?
Regards,
Tvrtko
More information about the Intel-gfx
mailing list