On 25/07/2020 02:33, Umesh Nerlige Ramappa wrote:

16Mb * 256 = 4Gb

That way you verify that we're not leaking GGTT space when closing the perf fd.

You might want to tweak the noa_wait sysfs value before/after the loop.

This might also only work on !32bits machines with enough memory...


Looks like calling close() in the above sequence will not result in a call to i915_perf_release (because mmap holds a reference to the file). 
Based on the latest patch series in the mailing list, if you see something we can add, please let me know. Note that we block mremap of an mmap-ped address by setting VM_DONTEXPAND in i915 perf mmap implementation.

Thanks,
Umesh

Oh thanks for reminding me :)

Since mmap holds a ref that means nobody will be able to open the stream once more until munmap is called.

So there won't be any GGTT space leakage and it's all good.


Forget my request then.

Thanks!


-Lionel