diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2017-10-18 13:23:15 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2017-10-19 09:07:11 +0100 |
commit | 78159ab1c1023587baf876c647325ae973c88f26 (patch) | |
tree | f4b17dc1987b8ca5ea8c6c6d48a8658e54a28d47 /lib | |
parent | 5a803d19c1c6bb0e6f49ceeb51affbbe425105bd (diff) |
lib: Idle the GT when quiescing the GPU
As part of the general procedure for ensuring the GPU is idle, we also
want to ask the driver to flush its idle_worker. The idle_worker is
responsible for releasing both the driver's internal cache of buffers
and cache of state (such as the prolonged GT wakeref). By flushing the
idle_worker we ensure that each test (each caller needing an idle gpu)
has a clean slate; not carrying over caches from one test to the next.
Note this is a silent no-op for kernels that do not know about DROP_IDLE,
old bugs will remain.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/drmtest.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/drmtest.c b/lib/drmtest.c index 8a07152c..15a46477 100644 --- a/lib/drmtest.c +++ b/lib/drmtest.c @@ -187,7 +187,7 @@ void gem_quiescent_gpu(int fd) gem_sync(fd, obj.handle); gem_close(fd, obj.handle); - igt_drop_caches_set(fd, DROP_RETIRE | DROP_FREED); + igt_drop_caches_set(fd, DROP_RETIRE | DROP_IDLE | DROP_FREED); } /** |