Since an access violation won't return an error to userspace for v >= 8
of the command parser this updates the cmd-crossing-page test to
explicitly read back from SO_WRITE_OFFSET[0] to see that the command
wasn't squashed to a NOOP.

Signed-off-by: Robert Bragg <rob...@sixbynine.org>
Reviewed-by: Matthew Auld <matthew.a...@intel.com>
---
 tests/gem_exec_parse.c | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/tests/gem_exec_parse.c b/tests/gem_exec_parse.c
index d5769e4..5c67e12 100644
--- a/tests/gem_exec_parse.c
+++ b/tests/gem_exec_parse.c
@@ -531,14 +531,25 @@ igt_main
        igt_subtest("cmd-crossing-page") {
                uint32_t lri_ok[] = {
                        MI_LOAD_REGISTER_IMM,
-                       0x5280, /* allowed register address 
(SO_WRITE_OFFSET[0]) */
-                       0x1,
+                       SO_WRITE_OFFSET_0, /* allowed register address */
+                       0xdcbaabc0, /* [1:0] MBZ */
+                       MI_BATCH_BUFFER_END,
+               };
+               uint32_t store_reg[] = {
+                       MI_STORE_REGISTER_MEM | (3 - 2),
+                       SO_WRITE_OFFSET_0,
+                       0, /* reloc */
                        MI_BATCH_BUFFER_END,
                };
                exec_split_batch(fd,
                                 lri_ok, sizeof(lri_ok),
                                 I915_EXEC_RENDER,
                                 0);
+               exec_batch_patched(fd, handle,
+                                  store_reg,
+                                  sizeof(store_reg),
+                                  2 * sizeof(uint32_t), /* reloc */
+                                  0xdcbaabc0);
        }
 
        igt_subtest("oacontrol-tracking") {
-- 
2.10.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to