On 21/12/2017 15:48, Chris Wilson wrote:
Ensure that the terminating write into WC-memory is flushed before we
might trigger a wait for ring space.
Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
---
tests/gem_exec_await.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tests/gem_exec_await.c b/tests/gem_exec_await.c
index 9c4467922..28b280ff6 100644
--- a/tests/gem_exec_await.c
+++ b/tests/gem_exec_await.c
@@ -222,6 +222,7 @@ static void wide(int fd, int ring_size, int timeout, unsigned int flags)
for (unsigned e = 0; e < nengine; e++)
exec[e].cmd[0] = MI_BATCH_BUFFER_END;
+ __sync_synchronize();
}
igt_assert_eq(intel_detect_and_clear_missed_interrupts(fd), 0);
In case someone is reading from the same uneducated situation as I was,
__sync_synchronize emits an mfence instructions which indeed forces a
flush of the write combine buffer.
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxx>
Regards,
Tvrtko
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx