On 23 September 2015 at 13:36, Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxxxxxxxx> wrote: > > Hi, > > On 09/18/2015 12:17 PM, Thomas Wood wrote: >> >> On 11 September 2015 at 15:31, Tvrtko Ursulin >> <tvrtko.ursulin@xxxxxxxxxxxxxxx> wrote: >>> >>> From: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxx> >>> >>> 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@xxxxxxxxx> >>> --- >>> 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. I've sent a follow up patch to move the function into the library and use it in gem_ppgtt and gem_tiled_swapping. > >> >>> +{ >>> + 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.. The follow up patch I've sent addresses this and a few other minor issues. > > You want v3 or you can live with v2? Unfortunately another version will be needed, as drm_open_any has been replaced by drm_open_driver. > > Regards, > > Tvrtko > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > http://lists.freedesktop.org/mailman/listinfo/intel-gfx _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx