diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2016-06-17 15:19:44 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2016-06-17 18:59:32 +0100 |
commit | 001d665080c1be7d8fe97b557d7b6102175956b7 (patch) | |
tree | cf646ccbf1be579e7fea56230c9c93f94a375cad /tests/Makefile.sources | |
parent | be21fc064b6d9ded5ccae7205204c0d5a03cf9e5 (diff) |
igt: Replace drv_missed_irq_hang script with a C-equivalent
In order to control some of the finer detail of detecting when we missed
an interrupt, replace the shell script with C.
This version submits a hanging batch and uses a child process to unhang
it, whilst the parent sleeps. As the child process is prevented from
running whilst the parent is alive (as the child is a low priority
normal process whereas the parent is a RT process), the child can only
unhang the parent after i915_wait_request() has spun up and tried to
enable the interrupt. In contrast, the shell script guessed a workload
that should take long enough for the i915_spin_request() to miss the
completion, but that was not guaranteed. Furthermore, from C we can
trigger a missed interrupt on each engine.
A minor convenience of the C version is that we don't have to worry
about install paths to find the binaries underneath.
References: https://bugs.freedesktop.org/show_bug.cgi?id=88437
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'tests/Makefile.sources')
-rw-r--r-- | tests/Makefile.sources | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/tests/Makefile.sources b/tests/Makefile.sources index 4189acf0..656e0069 100644 --- a/tests/Makefile.sources +++ b/tests/Makefile.sources @@ -140,6 +140,7 @@ TESTS_progs = \ drm_vma_limiter_cached \ drm_vma_limiter_cpu \ drm_vma_limiter_gtt \ + drv_missed_irq \ gem_bad_length \ gem_cpu_reloc \ gem_cs_prefetch \ @@ -210,7 +211,6 @@ TESTS_scripts_M = \ TESTS_scripts = \ debugfs_emon_crash \ drv_debugfs_reader \ - drv_missed_irq_hang \ drv_module_reload_basic \ kms_sysfs_edid_timing \ sysfs_l3_parity \ |