On Mon, Apr 29, 2013 at 07:15:36PM +0100, Damien Lespiau wrote: > Let's start by a small set of tests, to eventually consider running > more. > > The current list should then be: > > gem_mmap > gem_pread_after_blit > gem_ring_sync_loop > gem_ctx_basic > gem_pipe_control_store_loop > gem_storedw_loop_render > gem_storedw_loop_blt > gem_storedw_loop_bsd > gem_render_linear_blits > gem_tiled_blits > gem_cpu_reloc > > gem_exec_nop > gem_mmap_gtt > > Signed-off-by: Damien Lespiau <damien.lespiau at intel.com> Series is acked, a few comments below for more tests to include. Feel free to ignore (for the first round at least). Cheers, Daniel [Comments reference the test right above them.] > --- > tests/drm_lib.sh | 5 +++++ > tests/drm_vma_limiter.c | 2 ++ > tests/drm_vma_limiter_cached.c | 2 ++ > tests/drm_vma_limiter_cpu.c | 2 ++ > tests/drm_vma_limiter_gtt.c | 2 ++ > tests/gem_bad_length.c | 2 ++ > tests/gem_cacheing.c | 1 + > tests/gem_cpu_concurrent_blit.c | 1 + > tests/gem_cs_prefetch.c | 2 ++ > tests/gem_cs_tlb.c | 1 + > tests/gem_ctx_bad_destroy.c | 2 ++ > tests/gem_ctx_bad_exec.c | 3 +++ > tests/gem_ctx_create.c | 2 ++ > tests/gem_ctx_exec.c | 3 +++ > tests/gem_double_irq_loop.c | 2 ++ > tests/gem_dummy_reloc_loop.c | 1 + > tests/gem_exec_bad_domains.c | 1 + Low overhead, should imo be run in simulation. > tests/gem_exec_big.c | 2 ++ > tests/gem_exec_blt.c | 2 ++ > tests/gem_exec_faulting_reloc.c | 2 ++ Same. > tests/gem_exec_lut_handle.c | 2 ++ > tests/gem_fence_thrash.c | 1 + > tests/gem_fenced_exec_thrash.c | 12 +++++++++--- > tests/gem_flink.c | 1 + Same. > tests/gem_gtt_concurrent_blit.c | 1 + > tests/gem_gtt_cpu_tlb.c | 2 ++ > tests/gem_gtt_speed.c | 2 ++ > tests/gem_hangcheck_forcewake.c | 2 ++ > tests/gem_largeobject.c | 2 ++ > tests/gem_linear_blits.c | 2 ++ > tests/gem_lut_handle.c | 2 ++ Tons of tiny batches to exercise api corner-cases. Imo worthwile with reduced loop rounds. > tests/gem_mmap_offset_exhaustion.c | 2 ++ > tests/gem_partial_pwrite_pread.c | 1 + > tests/gem_pin.c | 2 ++ > tests/gem_pwrite.c | 2 ++ > tests/gem_readwrite.c | 2 ++ > tests/gem_reg_read.c | 2 ++ Tiny api test, should be included imo. > tests/gem_reloc_overflow.c | 2 ++ Same. > tests/gem_reloc_vs_gpu.c | 2 ++ > tests/gem_render_tiled_blits.c | 2 ++ > tests/gem_ringfill.c | 1 + > tests/gem_seqno_wrap.c | 2 ++ Maybe with reduced default rounds. It's a bit expensive, but imo pretty important ... > tests/gem_set_tiling_vs_blt.c | 1 + > tests/gem_set_tiling_vs_gtt.c | 2 ++ > tests/gem_set_tiling_vs_pwrite.c | 2 ++ > tests/gem_storedw_batches_loop.c | 2 ++ > tests/gem_threaded_access_tiled.c | 2 ++ > tests/gem_tiled_fence_blits.c | 2 ++ > tests/gem_tiled_partial_pwrite_pread.c | 1 + > tests/gem_tiled_pread.c | 2 ++ > tests/gem_tiled_pread_pwrite.c | 1 + > tests/gem_tiled_swapping.c | 2 ++ I think we should include some of the tiled tests. tiled_pread + tiled_pread_pwrite should give us coverage for tiling screw-ups without hunting endlessly for cache coherency issues or trying to force the full working set through swap. tiled_pread_pwrite definitely needs fewer rounds (the high number is to hunt for L-shaped memory architectures, which luckily is a thing of the past now). > tests/gem_tiling_max_stride.c | 2 ++ Interface test, should be included imo. > tests/gem_unfence_active_buffers.c | 2 ++ > tests/gem_unref_active_buffers.c | 2 ++ > tests/gem_vmap_blits.c | 2 ++ > tests/gem_wait_render_timeout.c | 2 ++ > tests/kms_flip.c | 1 + Maybe a reduced flip test, i.e. just basic flips, 10 rounds or so? Most of this just tests races against bazillion different things, so not too interesting. > tests/prime_nv_api.c | 3 +++ > tests/prime_nv_pcopy.c | 1 + > tests/prime_nv_test.c | 1 + > tests/prime_self_import.c | 1 + Again interface tests, imo good to include. > tests/prime_udl.c | 3 +++ > tests/sysfs_edid_timing | 2 ++ > tests/sysfs_rc6_residency.c | 2 ++ > tests/sysfs_rps.c | 2 ++ Same. Or do we presume that turbo isn't working anyway? > tests/testdisplay.c | 2 ++ > 67 files changed, 131 insertions(+), 3 deletions(-) > > diff --git a/tests/drm_lib.sh b/tests/drm_lib.sh > index a76fd47..ee31f00 100755 > --- a/tests/drm_lib.sh > +++ b/tests/drm_lib.sh > @@ -29,4 +29,9 @@ if [ `cat $i915_path/clients | wc -l` -gt "2" ] ; then > die "ERROR: other drm clients running" > fi > > +function drmtest_skip_on_simulation() > +{ > + [ -n "$INTEL_SIMULATION" ] && exit 77 > +} > > +drmtest_skip_on_simulation > diff --git a/tests/drm_vma_limiter.c b/tests/drm_vma_limiter.c > index 1971e2d..e5025ef 100644 > --- a/tests/drm_vma_limiter.c > +++ b/tests/drm_vma_limiter.c > @@ -60,6 +60,8 @@ int main(int argc, char **argv) > int i; > char *ptr; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > bufmgr = drm_intel_bufmgr_gem_init(fd, 4096); > diff --git a/tests/drm_vma_limiter_cached.c b/tests/drm_vma_limiter_cached.c > index 3797618..1144796 100644 > --- a/tests/drm_vma_limiter_cached.c > +++ b/tests/drm_vma_limiter_cached.c > @@ -61,6 +61,8 @@ int main(int argc, char **argv) > char *ptr; > drm_intel_bo *load_bo; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > bufmgr = drm_intel_bufmgr_gem_init(fd, 4096); > diff --git a/tests/drm_vma_limiter_cpu.c b/tests/drm_vma_limiter_cpu.c > index 24ce188..6f65cdb 100644 > --- a/tests/drm_vma_limiter_cpu.c > +++ b/tests/drm_vma_limiter_cpu.c > @@ -61,6 +61,8 @@ int main(int argc, char **argv) > int i; > char *ptr; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > bufmgr = drm_intel_bufmgr_gem_init(fd, 4096); > diff --git a/tests/drm_vma_limiter_gtt.c b/tests/drm_vma_limiter_gtt.c > index 540ea91..7e43fca 100644 > --- a/tests/drm_vma_limiter_gtt.c > +++ b/tests/drm_vma_limiter_gtt.c > @@ -62,6 +62,8 @@ int main(int argc, char **argv) > int i; > char *ptr; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > bufmgr = drm_intel_bufmgr_gem_init(fd, 4096); > diff --git a/tests/gem_bad_length.c b/tests/gem_bad_length.c > index 0f2268f..bb8b6b8 100644 > --- a/tests/gem_bad_length.c > +++ b/tests/gem_bad_length.c > @@ -124,6 +124,8 @@ int main(int argc, char **argv) > { > int fd; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > create0(fd); > diff --git a/tests/gem_cacheing.c b/tests/gem_cacheing.c > index 93983a2..8a169f1 100644 > --- a/tests/gem_cacheing.c > +++ b/tests/gem_cacheing.c > @@ -113,6 +113,7 @@ int main(int argc, char **argv) > bool skipped_all = true; > > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > srandom(0xdeadbeef); > > diff --git a/tests/gem_cpu_concurrent_blit.c b/tests/gem_cpu_concurrent_blit.c > index 21cbdb0..f850492 100644 > --- a/tests/gem_cpu_concurrent_blit.c > +++ b/tests/gem_cpu_concurrent_blit.c > @@ -99,6 +99,7 @@ main(int argc, char **argv) > int i; > > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > fd = drm_open_any(); > > diff --git a/tests/gem_cs_prefetch.c b/tests/gem_cs_prefetch.c > index 9ef35eb..3b05863 100644 > --- a/tests/gem_cs_prefetch.c > +++ b/tests/gem_cs_prefetch.c > @@ -96,6 +96,8 @@ int main(int argc, char **argv) > int count; > drm_intel_bo *sample_batch_bo; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > bufmgr = drm_intel_bufmgr_gem_init(fd, 4096); > diff --git a/tests/gem_cs_tlb.c b/tests/gem_cs_tlb.c > index 9f8f762..05e78c2 100644 > --- a/tests/gem_cs_tlb.c > +++ b/tests/gem_cs_tlb.c > @@ -152,6 +152,7 @@ int main(int argc, char **argv) > uint32_t devid; > > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > fd = drm_open_any(); > devid = intel_get_drm_devid(fd); > diff --git a/tests/gem_ctx_bad_destroy.c b/tests/gem_ctx_bad_destroy.c > index 02d24eb..855cd04 100644 > --- a/tests/gem_ctx_bad_destroy.c > +++ b/tests/gem_ctx_bad_destroy.c > @@ -80,6 +80,8 @@ int main(int argc, char *argv[]) > uint32_t ctx_id; > int ret, fd; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > ctx_id = context_create(fd); > diff --git a/tests/gem_ctx_bad_exec.c b/tests/gem_ctx_bad_exec.c > index 8a57fd4..f6463ac 100644 > --- a/tests/gem_ctx_bad_exec.c > +++ b/tests/gem_ctx_bad_exec.c > @@ -111,6 +111,9 @@ int main(int argc, char *argv[]) > uint32_t batch[2] = {MI_BATCH_BUFFER_END}; > uint32_t ctx_id; > int fd; > + > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > ctx_id = context_create(fd); > diff --git a/tests/gem_ctx_create.c b/tests/gem_ctx_create.c > index 84ef214..9601976 100644 > --- a/tests/gem_ctx_create.c > +++ b/tests/gem_ctx_create.c > @@ -42,6 +42,8 @@ int main(int argc, char *argv[]) > int ret, fd; > struct local_drm_i915_gem_context_create create; > > + drmtest_skip_on_simulation(); > + > create.ctx_id = rand(); > create.pad = rand(); > > diff --git a/tests/gem_ctx_exec.c b/tests/gem_ctx_exec.c > index b0362cc..8468110 100644 > --- a/tests/gem_ctx_exec.c > +++ b/tests/gem_ctx_exec.c > @@ -122,6 +122,9 @@ int main(int argc, char *argv[]) > uint32_t batch[2] = {0, MI_BATCH_BUFFER_END}; > uint32_t ctx_id; > int fd; > + > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > ctx_id = context_create(fd); > diff --git a/tests/gem_double_irq_loop.c b/tests/gem_double_irq_loop.c > index f2f8b1a..5e25954 100644 > --- a/tests/gem_double_irq_loop.c > +++ b/tests/gem_double_irq_loop.c > @@ -98,6 +98,8 @@ int main(int argc, char **argv) > int fd; > int devid; > > + drmtest_skip_on_simulation(); > + > if (argc != 1) { > fprintf(stderr, "usage: %s\n", argv[0]); > exit(-1); > diff --git a/tests/gem_dummy_reloc_loop.c b/tests/gem_dummy_reloc_loop.c > index b67c7d3..abf8e88 100644 > --- a/tests/gem_dummy_reloc_loop.c > +++ b/tests/gem_dummy_reloc_loop.c > @@ -128,6 +128,7 @@ int main(int argc, char **argv) > int devid; > > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > fd = drm_open_any(); > devid = intel_get_drm_devid(fd); > diff --git a/tests/gem_exec_bad_domains.c b/tests/gem_exec_bad_domains.c > index d174349..b2b0d43 100644 > --- a/tests/gem_exec_bad_domains.c > +++ b/tests/gem_exec_bad_domains.c > @@ -157,6 +157,7 @@ int main(int argc, char **argv) > drm_intel_bo *tmp; > > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > fd = drm_open_any(); > > diff --git a/tests/gem_exec_big.c b/tests/gem_exec_big.c > index 3005762..9dddfac 100644 > --- a/tests/gem_exec_big.c > +++ b/tests/gem_exec_big.c > @@ -108,6 +108,8 @@ int main(int argc, char **argv) > uint32_t reloc_ofs; > unsigned batch_size; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > for (batch_size = BATCH_SIZE/4; batch_size <= BATCH_SIZE; batch_size += 4096) { > diff --git a/tests/gem_exec_blt.c b/tests/gem_exec_blt.c > index eb5ae66..e28c2e6 100644 > --- a/tests/gem_exec_blt.c > +++ b/tests/gem_exec_blt.c > @@ -250,6 +250,8 @@ int main(int argc, char **argv) > { > int i; > > + drmtest_skip_on_simulation(); > + > if (argc > 1) { > for (i = 1; i < argc; i++) { > int object_size = atoi(argv[i]); > diff --git a/tests/gem_exec_faulting_reloc.c b/tests/gem_exec_faulting_reloc.c > index 863a1b0..c880077 100644 > --- a/tests/gem_exec_faulting_reloc.c > +++ b/tests/gem_exec_faulting_reloc.c > @@ -220,6 +220,8 @@ static void run(int object_size) > > int main(int argc, char **argv) > { > + drmtest_skip_on_simulation(); > + > run(OBJECT_SIZE); > > return 0; > diff --git a/tests/gem_exec_lut_handle.c b/tests/gem_exec_lut_handle.c > index 4f544ad..54ed3dd 100644 > --- a/tests/gem_exec_lut_handle.c > +++ b/tests/gem_exec_lut_handle.c > @@ -127,6 +127,8 @@ int main(int argc, char **argv) > { .name = NULL }, > }, *p; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > for (n = 0; n < MAX_NUM_EXEC; n++) { > diff --git a/tests/gem_fence_thrash.c b/tests/gem_fence_thrash.c > index e1cfc4e..a28c127 100644 > --- a/tests/gem_fence_thrash.c > +++ b/tests/gem_fence_thrash.c > @@ -208,6 +208,7 @@ int > main(int argc, char **argv) > { > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > if (drmtest_run_subtest("bo-write-verify-none")) > assert (run_test(0, bo_write_verify, I915_TILING_NONE, 80) == 0); > diff --git a/tests/gem_fenced_exec_thrash.c b/tests/gem_fenced_exec_thrash.c > index c8a2c58..ebc2121 100644 > --- a/tests/gem_fenced_exec_thrash.c > +++ b/tests/gem_fenced_exec_thrash.c > @@ -159,9 +159,15 @@ static void run_test(int fd, int num_fences, int expected_errno) > int > main(int argc, char **argv) > { > - int fd = drm_open_any(); > - int num_fences = get_num_fences(fd); > - uint32_t devid = intel_get_drm_devid(fd); > + int fd; > + int num_fences; > + uint32_t devid; > + > + drmtest_skip_on_simulation(); > + > + fd = drm_open_any(); > + num_fences = get_num_fences(fd); > + devid = intel_get_drm_devid(fd); > > assert(num_fences <= MAX_FENCES); > > diff --git a/tests/gem_flink.c b/tests/gem_flink.c > index bfa85c9..e3f9cc7 100644 > --- a/tests/gem_flink.c > +++ b/tests/gem_flink.c > @@ -155,6 +155,7 @@ int main(int argc, char **argv) > int fd; > > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > fd = drm_open_any(); > > diff --git a/tests/gem_gtt_concurrent_blit.c b/tests/gem_gtt_concurrent_blit.c > index 8bd80f1..7b99558 100644 > --- a/tests/gem_gtt_concurrent_blit.c > +++ b/tests/gem_gtt_concurrent_blit.c > @@ -102,6 +102,7 @@ main(int argc, char **argv) > int i; > > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > fd = drm_open_any(); > > diff --git a/tests/gem_gtt_cpu_tlb.c b/tests/gem_gtt_cpu_tlb.c > index 6853370..d324aee 100644 > --- a/tests/gem_gtt_cpu_tlb.c > +++ b/tests/gem_gtt_cpu_tlb.c > @@ -77,6 +77,8 @@ main(int argc, char **argv) > > uint32_t *ptr; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > handle = gem_create(fd, OBJ_SIZE); > diff --git a/tests/gem_gtt_speed.c b/tests/gem_gtt_speed.c > index f0fb901..8b318d3 100644 > --- a/tests/gem_gtt_speed.c > +++ b/tests/gem_gtt_speed.c > @@ -61,6 +61,8 @@ int main(int argc, char **argv) > int loop, i, tiling; > int fd; > > + drmtest_skip_on_simulation(); > + > if (argc > 1) > size = atoi(argv[1]); > if (size == 0) { > diff --git a/tests/gem_hangcheck_forcewake.c b/tests/gem_hangcheck_forcewake.c > index 96a30fe..4e6358b 100644 > --- a/tests/gem_hangcheck_forcewake.c > +++ b/tests/gem_hangcheck_forcewake.c > @@ -65,6 +65,8 @@ int main(int argc, char **argv) > unsigned long pitch, act_size; > int fd, i, devid; > > + drmtest_skip_on_simulation(); > + > memset(blob, 'A', sizeof(blob)); > > fd = drm_open_any(); > diff --git a/tests/gem_largeobject.c b/tests/gem_largeobject.c > index 163bf10..a14cc04 100644 > --- a/tests/gem_largeobject.c > +++ b/tests/gem_largeobject.c > @@ -87,6 +87,8 @@ int main(int argc, char **argv) > { > int fd; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > test_large_object(fd); > diff --git a/tests/gem_linear_blits.c b/tests/gem_linear_blits.c > index ec2dc56..f7e0fef 100644 > --- a/tests/gem_linear_blits.c > +++ b/tests/gem_linear_blits.c > @@ -182,6 +182,8 @@ int main(int argc, char **argv) > uint32_t start = 0; > int i, fd, count; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > count = 0; > diff --git a/tests/gem_lut_handle.c b/tests/gem_lut_handle.c > index a051003..616aa4a 100644 > --- a/tests/gem_lut_handle.c > +++ b/tests/gem_lut_handle.c > @@ -179,6 +179,8 @@ int main(int argc, char **argv) > uint32_t handle; > int fd, i; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > handle = gem_create(fd, 4096); > diff --git a/tests/gem_mmap_offset_exhaustion.c b/tests/gem_mmap_offset_exhaustion.c > index 51ae599..3c026bb 100644 > --- a/tests/gem_mmap_offset_exhaustion.c > +++ b/tests/gem_mmap_offset_exhaustion.c > @@ -83,6 +83,8 @@ int main(int argc, char **argv) > { > int fd, i; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > /* we have 32bit of address space, so try to fit one MB more > diff --git a/tests/gem_partial_pwrite_pread.c b/tests/gem_partial_pwrite_pread.c > index f6fbdbf..2ca0ece 100644 > --- a/tests/gem_partial_pwrite_pread.c > +++ b/tests/gem_partial_pwrite_pread.c > @@ -258,6 +258,7 @@ int main(int argc, char **argv) > srandom(0xdeadbeef); > > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > fd = drm_open_any(); > > diff --git a/tests/gem_pin.c b/tests/gem_pin.c > index edf5e60..cbb1fe7 100644 > --- a/tests/gem_pin.c > +++ b/tests/gem_pin.c > @@ -203,6 +203,8 @@ int main(int argc, char **argv) > uint32_t *handle, *offset; > int fd, i; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > if (!test_can_pin(fd)) > diff --git a/tests/gem_pwrite.c b/tests/gem_pwrite.c > index 051ed3b..45a7e63 100644 > --- a/tests/gem_pwrite.c > +++ b/tests/gem_pwrite.c > @@ -91,6 +91,8 @@ int main(int argc, char **argv) > uint32_t *src, dst; > int fd, count; > > + drmtest_skip_on_simulation(); > + > if (argc > 1) > object_size = atoi(argv[1]); > if (object_size == 0) > diff --git a/tests/gem_readwrite.c b/tests/gem_readwrite.c > index d3d69e3..a4a4d9c 100644 > --- a/tests/gem_readwrite.c > +++ b/tests/gem_readwrite.c > @@ -82,6 +82,8 @@ int main(int argc, char **argv) > int ret; > int handle; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > handle = gem_create(fd, OBJECT_SIZE); > diff --git a/tests/gem_reg_read.c b/tests/gem_reg_read.c > index 692dd98..8f244cc 100644 > --- a/tests/gem_reg_read.c > +++ b/tests/gem_reg_read.c > @@ -71,6 +71,8 @@ int main(int argc, char *argv[]) > int ret, fd; > uint64_t val; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > reg_read.offset = 0x2358; > diff --git a/tests/gem_reloc_overflow.c b/tests/gem_reloc_overflow.c > index 140b684..26357ab 100644 > --- a/tests/gem_reloc_overflow.c > +++ b/tests/gem_reloc_overflow.c > @@ -62,6 +62,8 @@ int main(int argc, char *argv[]) > struct drm_i915_gem_exec_object2 *execobjs; > struct drm_i915_gem_execbuffer2 execbuf = { 0 }; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > /* Create giant reloc buffer area. */ > diff --git a/tests/gem_reloc_vs_gpu.c b/tests/gem_reloc_vs_gpu.c > index 47681d5..0c943aa 100644 > --- a/tests/gem_reloc_vs_gpu.c > +++ b/tests/gem_reloc_vs_gpu.c > @@ -148,6 +148,8 @@ int main(int argc, char **argv) > int fd, i, ring; > uint32_t test; > > + drmtest_skip_on_simulation(); > + > memset(blob, 'A', sizeof(blob)); > > fd = drm_open_any(); > diff --git a/tests/gem_render_tiled_blits.c b/tests/gem_render_tiled_blits.c > index 626e652..ed21c24 100644 > --- a/tests/gem_render_tiled_blits.c > +++ b/tests/gem_render_tiled_blits.c > @@ -71,6 +71,8 @@ int main(int argc, char **argv) > uint32_t start = 0; > int i, j, fd, count; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > render_copy = get_render_copyfunc(intel_get_drm_devid(fd)); > diff --git a/tests/gem_ringfill.c b/tests/gem_ringfill.c > index 948630b..db842fe 100644 > --- a/tests/gem_ringfill.c > +++ b/tests/gem_ringfill.c > @@ -206,6 +206,7 @@ int main(int argc, char **argv) > int fd, fails = 0; > > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > fd = drm_open_any(); > > diff --git a/tests/gem_seqno_wrap.c b/tests/gem_seqno_wrap.c > index 776dedc..f354a52 100644 > --- a/tests/gem_seqno_wrap.c > +++ b/tests/gem_seqno_wrap.c > @@ -647,6 +647,8 @@ int main(int argc, char **argv) > int wcount = 0; > int r = -1; > > + drmtest_skip_on_simulation(); > + > parse_options(argc, argv); > > card_index = drm_get_card(0); > diff --git a/tests/gem_set_tiling_vs_blt.c b/tests/gem_set_tiling_vs_blt.c > index 69dc7e6..398a227 100644 > --- a/tests/gem_set_tiling_vs_blt.c > +++ b/tests/gem_set_tiling_vs_blt.c > @@ -234,6 +234,7 @@ int main(int argc, char **argv) > uint32_t tiling, tiling_after; > > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > for (i = 0; i < 1024*256; i++) > data[i] = i; > diff --git a/tests/gem_set_tiling_vs_gtt.c b/tests/gem_set_tiling_vs_gtt.c > index 1241b54..4065ff4 100644 > --- a/tests/gem_set_tiling_vs_gtt.c > +++ b/tests/gem_set_tiling_vs_gtt.c > @@ -58,6 +58,8 @@ int main(int argc, char **argv) > bool tiling_changed; > int tile_height; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > if (IS_GEN2(intel_get_drm_devid(fd))) > diff --git a/tests/gem_set_tiling_vs_pwrite.c b/tests/gem_set_tiling_vs_pwrite.c > index 35ec5cd..77f4462 100644 > --- a/tests/gem_set_tiling_vs_pwrite.c > +++ b/tests/gem_set_tiling_vs_pwrite.c > @@ -56,6 +56,8 @@ int main(int argc, char **argv) > int i; > uint32_t handle; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > for (i = 0; i < OBJECT_SIZE/4; i++) > diff --git a/tests/gem_storedw_batches_loop.c b/tests/gem_storedw_batches_loop.c > index 86c3469..79eebb2 100644 > --- a/tests/gem_storedw_batches_loop.c > +++ b/tests/gem_storedw_batches_loop.c > @@ -137,6 +137,8 @@ int main(int argc, char **argv) > int fd; > int devid; > > + drmtest_skip_on_simulation(); > + > if (argc != 1) { > fprintf(stderr, "usage: %s\n", argv[0]); > exit(-1); > diff --git a/tests/gem_threaded_access_tiled.c b/tests/gem_threaded_access_tiled.c > index 362cf3a..48a6f62 100644 > --- a/tests/gem_threaded_access_tiled.c > +++ b/tests/gem_threaded_access_tiled.c > @@ -95,6 +95,8 @@ int main(int argc, char **argv) > unsigned long pitch = 0; > int r; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > assert(fd >= 0); > > diff --git a/tests/gem_tiled_fence_blits.c b/tests/gem_tiled_fence_blits.c > index dc65479..2b02943 100644 > --- a/tests/gem_tiled_fence_blits.c > +++ b/tests/gem_tiled_fence_blits.c > @@ -108,6 +108,8 @@ int main(int argc, char **argv) > uint32_t start = 0; > int fd, i, count; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > count = 3 * gem_aperture_size(fd) / (1024*1024) / 2; > if (count > intel_get_total_ram_mb() * 9 / 10) { > diff --git a/tests/gem_tiled_partial_pwrite_pread.c b/tests/gem_tiled_partial_pwrite_pread.c > index f6df562..48fd506 100644 > --- a/tests/gem_tiled_partial_pwrite_pread.c > +++ b/tests/gem_tiled_partial_pwrite_pread.c > @@ -277,6 +277,7 @@ int main(int argc, char **argv) > uint32_t tiling_mode = I915_TILING_X; > > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > srandom(0xdeadbeef); > > diff --git a/tests/gem_tiled_pread.c b/tests/gem_tiled_pread.c > index 189affc..779f66f 100644 > --- a/tests/gem_tiled_pread.c > +++ b/tests/gem_tiled_pread.c > @@ -134,6 +134,8 @@ main(int argc, char **argv) > uint32_t handle; > uint32_t devid; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > handle = create_bo(fd); > diff --git a/tests/gem_tiled_pread_pwrite.c b/tests/gem_tiled_pread_pwrite.c > index ed6b711..0eb7098 100644 > --- a/tests/gem_tiled_pread_pwrite.c > +++ b/tests/gem_tiled_pread_pwrite.c > @@ -123,6 +123,7 @@ main(int argc, char **argv) > uint32_t handle, handle_target; > int count; > > + drmtest_skip_on_simulation(); > > fd = drm_open_any(); > count = intel_get_total_ram_mb() * 9 / 10; > diff --git a/tests/gem_tiled_swapping.c b/tests/gem_tiled_swapping.c > index 14f5f40..702cb74 100644 > --- a/tests/gem_tiled_swapping.c > +++ b/tests/gem_tiled_swapping.c > @@ -101,6 +101,8 @@ main(int argc, char **argv) > int count; > current_tiling_mode = I915_TILING_X; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > /* need slightly more than total ram */ > count = intel_get_total_ram_mb() * 11 / 10; > diff --git a/tests/gem_tiling_max_stride.c b/tests/gem_tiling_max_stride.c > index 21daab0..0429d39 100644 > --- a/tests/gem_tiling_max_stride.c > +++ b/tests/gem_tiling_max_stride.c > @@ -81,6 +81,8 @@ int main(int argc, char *argv[]) > int tile_width = 512; > int tile_height = 8; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > devid = intel_get_drm_devid(fd); > diff --git a/tests/gem_unfence_active_buffers.c b/tests/gem_unfence_active_buffers.c > index bffc62e..3f6a053 100644 > --- a/tests/gem_unfence_active_buffers.c > +++ b/tests/gem_unfence_active_buffers.c > @@ -70,6 +70,8 @@ int main(int argc, char **argv) > drm_intel_bo *busy_bo, *test_bo; > uint32_t tiling = I915_TILING_X; > > + drmtest_skip_on_simulation(); > + > for (i = 0; i < 1024*256; i++) > data[i] = i; > > diff --git a/tests/gem_unref_active_buffers.c b/tests/gem_unref_active_buffers.c > index aa29c1d..8a13a20 100644 > --- a/tests/gem_unref_active_buffers.c > +++ b/tests/gem_unref_active_buffers.c > @@ -56,6 +56,8 @@ int main(int argc, char **argv) > { > int fd, i; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > bufmgr = drm_intel_bufmgr_gem_init(fd, 4096); > diff --git a/tests/gem_vmap_blits.c b/tests/gem_vmap_blits.c > index b886821..5e1c170 100644 > --- a/tests/gem_vmap_blits.c > +++ b/tests/gem_vmap_blits.c > @@ -262,6 +262,8 @@ int main(int argc, char **argv) > uint32_t start = 0; > int i, fd, count; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > if (!has_vmap(fd)) { > diff --git a/tests/gem_wait_render_timeout.c b/tests/gem_wait_render_timeout.c > index 14482e3..ed30e5c 100644 > --- a/tests/gem_wait_render_timeout.c > +++ b/tests/gem_wait_render_timeout.c > @@ -122,6 +122,8 @@ int main(int argc, char **argv) > bool done = false; > int i, iter = 1; > > + drmtest_skip_on_simulation(); > + > fd = drm_open_any(); > > bufmgr = drm_intel_bufmgr_gem_init(fd, 4096); > diff --git a/tests/kms_flip.c b/tests/kms_flip.c > index 39f0043..db4a65a 100644 > --- a/tests/kms_flip.c > +++ b/tests/kms_flip.c > @@ -1202,6 +1202,7 @@ int main(int argc, char **argv) > int i; > > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > drm_fd = drm_open_any(); > > diff --git a/tests/prime_nv_api.c b/tests/prime_nv_api.c > index e1b7117..f6e1697 100644 > --- a/tests/prime_nv_api.c > +++ b/tests/prime_nv_api.c > @@ -18,6 +18,7 @@ > #include "nouveau.h" > #include "intel_gpu_tools.h" > #include "intel_batchbuffer.h" > +#include "drmtest.h" > > #define BO_SIZE (256*1024) > > @@ -316,6 +317,8 @@ int main(int argc, char **argv) > { > int ret; > > + drmtest_skip_on_simulation(); > + > ret = find_and_open_devices(); > if (ret < 0) > return ret; > diff --git a/tests/prime_nv_pcopy.c b/tests/prime_nv_pcopy.c > index 88b14e5..1995de0 100644 > --- a/tests/prime_nv_pcopy.c > +++ b/tests/prime_nv_pcopy.c > @@ -1268,6 +1268,7 @@ int main(int argc, char **argv) > int ret, failed = 0, run = 0; > > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > ret = find_and_open_devices(); > if (ret < 0) > diff --git a/tests/prime_nv_test.c b/tests/prime_nv_test.c > index 9edd9e0..f864441 100644 > --- a/tests/prime_nv_test.c > +++ b/tests/prime_nv_test.c > @@ -511,6 +511,7 @@ int main(int argc, char **argv) > return ret; > > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > if (nouveau_fd == -1 || intel_fd == -1) { > fprintf(stderr,"failed to find intel and nouveau GPU\n"); > diff --git a/tests/prime_self_import.c b/tests/prime_self_import.c > index abdc220..79afe70 100644 > --- a/tests/prime_self_import.c > +++ b/tests/prime_self_import.c > @@ -197,6 +197,7 @@ int main(int argc, char **argv) > int i; > > drmtest_subtest_init(argc, argv); > + drmtest_skip_on_simulation(); > > for (i = 0; i < ARRAY_SIZE(tests); i++) { > if (drmtest_run_subtest(tests[i].name)) > diff --git a/tests/prime_udl.c b/tests/prime_udl.c > index 4e0d9be..97f7898 100644 > --- a/tests/prime_udl.c > +++ b/tests/prime_udl.c > @@ -29,6 +29,7 @@ > #include "intel_bufmgr.h" > #include "intel_gpu_tools.h" > #include "intel_batchbuffer.h" > +#include "drmtest.h" > > int intel_fd = -1, udl_fd = -1; > drm_intel_bufmgr *bufmgr; > @@ -150,6 +151,8 @@ int main(int argc, char **argv) > { > int ret; > > + drmtest_skip_on_simulation(); > + > ret = find_and_open_devices(); > if (ret < 0) > return ret; > diff --git a/tests/sysfs_edid_timing b/tests/sysfs_edid_timing > index 3a8c6c0..2a43cca 100755 > --- a/tests/sysfs_edid_timing > +++ b/tests/sysfs_edid_timing > @@ -5,6 +5,8 @@ > # we sometimes take a *really* long time. So let's just check for some reasonable timing here > # > > +[ -n "$INTEL_SIMULATION" ] && exit 77 > + > TIME1=$(date +%s%N) > cat $(find /sys/devices/|grep drm | grep /status) > /dev/null > TIME2=$(date +%s%N) > diff --git a/tests/sysfs_rc6_residency.c b/tests/sysfs_rc6_residency.c > index cd62e77..f4d8477 100644 > --- a/tests/sysfs_rc6_residency.c > +++ b/tests/sysfs_rc6_residency.c > @@ -63,6 +63,8 @@ int main(int argc, char *argv[]) > FILE *file; > int diff; > > + drmtest_skip_on_simulation(); > + > /* Use drm_open_any to verify device existence */ > fd = drm_open_any(); > close(fd); > diff --git a/tests/sysfs_rps.c b/tests/sysfs_rps.c > index 8ba541c..480592a 100644 > --- a/tests/sysfs_rps.c > +++ b/tests/sysfs_rps.c > @@ -133,6 +133,8 @@ int main(int argc, char *argv[]) > struct junk *junk = stuff; > int fd, ret; > > + drmtest_skip_on_simulation(); > + > if (argc > 1) > verbose++; > > diff --git a/tests/testdisplay.c b/tests/testdisplay.c > index 251141f..c653792 100644 > --- a/tests/testdisplay.c > +++ b/tests/testdisplay.c > @@ -675,6 +675,8 @@ int main(int argc, char **argv) > GMainLoop *mainloop; > float force_clock; > > + drmtest_skip_on_simulation(); > + > enter_exec_path( argv ); > > opterr = 0; > -- > 1.8.1.4 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx at lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch