123 Commits

Author SHA1 Message Date
Daniel Vetter
c9795c6dfe tests: add gem_cs_tlb
Should test tlb coherency, but somehow it fails to hit the bug I want
it to hit ... needs more work.
2012-10-09 17:30:59 +02:00
Chris Wilson
3b9a76d2fa tests: Add gem_cpu_reloc
Attempt to stress test performing relocations whilst the batch is in the
CPU domain.

A freshly allocated buffer starts in the CPU domain, and the pwrite
should also be performed whilst in the CPU domain and so we should
execute the relocations within the CPU domain. If for any reason one of
those steps should land it in the GTT domain, we take the secondary
precaution of filling the mappable portion of the GATT.

In order to detect whether a relocation fails, we first fill a target
buffer with a sequence of invalid commands that would cause the GPU to
immediate hang, and then attempt to overwrite them with a legal, if
short, batchbuffer using a BLT. Then we come to execute the bo, if the
relocation fail and we either copy across all zeros or garbage, then the
GPU will hang.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-10-02 17:35:01 +01:00
Daniel Vetter
3d4ebe9be3 fixup .gitignore for newly add sysfs_rps test 2012-10-02 10:32:25 +02:00
Chris Wilson
ac23daaa51 tests/gem_cacheing: Exercise snoop coherency
This is based on tests/gem_partial_pwrite_pread which aims to detect
incoherency between CPU reads and writes to a bo whilst using it as a
source and target for GPU writes.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-08-27 09:42:34 +01:00
Daniel Vetter
082826de6c tests: add gem_gtt_cpu_tlb
This catches tlb invalidation issues on my snb mobile gt2+
2012-08-15 10:26:48 +02:00
Maarten Lankhorst
fc54f2eaa8 satisfy danvet's OC
and add skip codes, but mostly satisfy danvet's OCD
2012-08-14 18:25:50 +02:00
Maarten Lankhorst
4520025b73 Add intel <-> nouveau prime tests 2012-08-13 15:57:57 +02:00
Daniel Vetter
796f6193c9 tests: add missing stuff to .gitignore
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-07-23 09:52:10 +02:00
Daniel Vetter
95877ab9ce tests/gem_wait_rendering_timout: adjust .gitignore 2012-05-29 16:35:35 +02:00
Daniel Vetter
1fedd1db41 tests: add flip_test to .gitignore 2012-05-22 10:53:38 +02:00
Daniel Vetter
cf72da57dc tests: add gem_unfence_active_buffers
Unfortunately this requires slab poisoning to catch anything :(

Also add a new helper to drmtest to get the available fence count.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-04-22 12:35:23 +02:00
Daniel Vetter
16bc619939 tests: add gem_set_tiling_vs_pwrite
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-04-17 22:02:33 +02:00
Daniel Vetter
ff6abb313d tests: add gem_set_tiling_vs_gtt
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-04-17 17:25:24 +02:00
Daniel Vetter
b38188ad97 tests: rename gem_tiled_after_untiled_blt into gem_set_tiling_vs_blt
... it checks much more now.

Also update the comments a bit in the testcase.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-04-15 23:59:12 +02:00
Daniel Vetter
8f6ebd4ac0 tests: add gem_gtt_concurrent_blit
Same test as Chris Wilson's gem_cpu_concurrent_blit, but for
gtt mmaps.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-04-11 15:28:26 +02:00
Daniel Vetter
0448eefeb2 tests: add sysfs_rc6_residency to .gitignore 2012-04-11 15:02:32 +02:00
Chris Wilson
da026d8bfe test: Exercise concurrent GPU read/write with CPU domain access
Designed to exercise this patch to i915.ko:

diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index fbf1118..57ae1f2 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -3181,9 +3181,11 @@ i915_gem_object_set_to_cpu_domain(struct drm_i915_gem_obj
        if (ret)
                return ret;

-       ret = i915_gem_object_wait_rendering(obj);
-       if (ret)
-               return ret;
+       if (write || obj->pending_gpu_write) {
+               ret = i915_gem_object_wait_rendering(obj);
+               if (ret)
+                       return ret;
+       }

        i915_gem_object_flush_gtt_write_domain(obj);

By exercising the conditions whereby should either of the checks be missed
an error is detected.
2012-04-10 19:35:29 +01:00
Daniel Vetter
c34e481199 tests: add gem_tiled_after_untiled_blt
Signed-Off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-03-23 19:31:01 +01:00
Daniel Vetter
c4ae3bc412 update .gitingore 2012-03-20 14:26:31 +01:00
Daniel Vetter
6fe3884bc9 add sprite demo from Armin Reese
Also fixed up the copyright header a bit. No comments on the coding
styled used ;-)

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-02-08 16:49:15 +01:00
Daniel Vetter
98129fa2ff tests: add gem_tiled_swapping
Also add a drmtest_exchange_int helper, might come handy at other
places.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-01-22 22:28:46 +01:00
Daniel Vetter
d749921e48 tests: update .gitignore 2012-01-15 16:40:32 +01:00
Gaetan Nadon
6540ed2112 Use standard .gitignore file and layout
Reusing xorg code saves maintenance in the long term.

Now that m4/.gitignore is removed, the -I m4 ${ACLOCAL_FLAGS}
must be removed to avoid build breakage as m4 is generated and not
part of the git source.

Acked-by: Cyril Brulebois <kibi@debian.org>
Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-01-04 10:47:10 +01:00