summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-09-10lib/drmtest: consolidate the helper process killing in one exit handlerfor-imreDaniel Vetter2-9/+38
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-10tests/gem_reloc_vs_gpu: use igt_fork_helperDaniel Vetter1-13/+3
Now we do a waitpid instead of a simple wait which could eat the "wrong" child ... Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-10lib/drmtest: create helpers for forking helper threadsDaniel Vetter2-28/+61
The upshot is that we can share the logic to make sure the helpers are all properly stoved again in a 2nd step. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-08lib/drmtest: fixup for the prefault reworkDaniel Vetter1-1/+0
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-08lib/drmtest: Avoid calling exit handlers multiple timesDaniel Vetter1-2/+16
- reset the count when forking - don't add the same handler multiple times - don't restore the exit signal handlers in the forked helper process - reset the exit handler count once called to make sure we don't call it multiple times when dying - don't wait for the signal helper if it's gone already Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04tests/gem_reloc_overflow: Add more checksDaniel Vetter1-8/+125
For reloc offsets and batch start/len. Doesn't quite fit into the test subject at hand here, but meh. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04tests/gem_reloc_overflow: convert to subtestsDaniel Vetter3-82/+77
More will come! Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04tests/gem_exec_bad_domains: enable conflicting write domains testDaniel Vetter1-4/+1
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04lib: fix the fix for gen5 workaround emmisionImre Deak1-1/+2
Fix the regression introduced in commit bfbe813f8fb587017c4e1d73c51395c2837eb395 Author: Daniel Vetter <daniel.vetter@ffwll.ch> Date: Tue May 29 22:14:06 2012 +0200 lib: fix gen5 workaround emission Signed-off-by: Imre Deak <imre.deak@intel.com>
2013-09-04lib/intel_batchbuffer: remove code w/o effectImre Deak1-2/+0
Introduced when refactoring the patch in commit c1ee0bb53269ded7b79966d081518d689639bac7 Author: Imre Deak <imre.deak@intel.com> Date: Mon Jul 29 16:43:31 2013 +0300 intel_batchbuffer: add support for non-32bit blt copies No functional change. Signed-off-by: Imre Deak <imre.deak@intel.com>
2013-09-04tests/gem_pipe_control_store_loop: Add subtest for reused buffersDaniel Vetter1-45/+56
This exercises the slightly faulty kernel w/a that Eric fixed in commit e844b990b1df9242bb91b7d490552f3198946838 Author: Eric Anholt <eric@anholt.net> Date: Tue Jul 31 15:35:01 2012 -0700 drm/i915: Don't forget to apply SNB PIPE_CONTROL GTT workaround. If a buffer that was the target of a PIPE_CONTROL from userland was a reused one that hadn't been evicted which had not previously had this workaround applied, then the early return for a correct presumed_offset in this function meant we would not bind it into the GTT and the write would land somewhere else. Fixes reproducible failures with GL_EXT_timer_query usage in apitrace, and I also expect it to fix the intermittent OQ issues on snb that danvet's been working on. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=48019 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=52932 Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Carl Worth <cworth@cworth.org> Tested-by: Carl Worth <cworth@cworth.org> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04tests: add missing igt_exit() callsDaniel Vetter2-2/+2
Forgotten while converting to subtests, then copy&pasted. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04lib/drmtest: add igt_skip_on macroDaniel Vetter1-1/+2
I've fumbled the logic inversion when converting to igt_require way too often, so lets add something for dummies like me ;-) Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04tests: Update .gitignoreDaniel Vetter1-0/+1
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04tests: add gem_persisten_relocsDaniel Vetter4-1/+388
This reproduces the 3.7 relocation regression ... Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-03intel_gtt: Raw PTE dumper modeBen Widawsky1-0/+23
./tools/intel_gtt -d | head GTT offset | PTEs -------------------------------------------------------- 0x000000 | 0xe4005015 0xe2854015 0xe283e015 0xe283f015 0x004000 | 0xe28ba015 0xe28bb015 0xe28b6015 0xe28b7015 0x008000 | 0xe2828015 0xe2829015 0xe282a015 0xe282b015 0x00c000 | 0xe2928015 0xe2929015 0xe292a015 0xe292b015 0x010000 | 0xe2918015 0xe2919015 0xe291a015 0xe291b015 0x014000 | 0xe291c015 0xe291d015 0xe291e015 0xe291f015 0x018000 | 0xe2920015 0xe2921015 0xe2922015 0xe2923015 0x01c000 | 0xe2924015 0xe2925015 0xe2926015 0xe2927015 Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-09-03intel_gtt: Properly support gen6+ GTT PTEsBen Widawsky1-8/+34
This finishes the objective in the last patch which was to actually deal with physical addresses, and not the PTEs. GEN6+ Provided support for physical addresses above 4GB. I'm not actually sure what Ironlake supported, and don't feel like firing up the timemachine. v2: Add support for gen4, gen5, and haswell. Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-09-03intel_gtt: Use function to get the physical addressBen Widawsky1-11/+15
The GTT PTEs that the tool is trying to compare is really about addresses, and not the PTE itself. To accomplish this, make which calculates the physical address we actually want. This commit itself doesn't change any functionality; just the wording in the code. Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-09-03gem_vmap_blits: Demote warning to noteBen Widawsky1-1/+1
The warning that vmap isn't supported is useful, but it shouldn't get in the way of developers (or distros) being able to use -Werror. Cc: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-09-03intel_reg_dumper: Silence GCC for uninitialized clockBen Widawsky1-1/+1
GCC 4.8.1 seems to think clock may be uninitialized. Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-09-03tests/gem_reloc_vs_gpu: add thrashing testsDaniel Vetter1-6/+42
Using the i915_gem_drop_caches debugfs interface to thrash without really thrashing. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-03tests/gem_reloc_vs_gpu: add forked versionsDaniel Vetter1-0/+37
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-03lib/drmtest: use igt_require/assert in the prefault helpersDaniel Vetter2-18/+8
2013-09-03tests/gem_reloc_vs_gpu: Add faulting reloc testsDaniel Vetter1-17/+102
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-03lib/drmtest: include sys/mman.h from drmtest.hDaniel Vetter35-34/+1
We need it for mmapping to get at PROT_READ|WRITE anyway. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-03lib/drmtest: extract gem_execbuf helperDaniel Vetter4-26/+14
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-03tests/gem_reloc_vs_gpu: add interruptible versionDaniel Vetter2-19/+42
Exercise a bug where we've failed to propagate the error code correctly. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-02kms_flip: Fix use of fb_width for PAN subtestsChris Wilson1-10/+7
We need to be careful to remember that fb-width is not always the same as hdisplay, since for panning we allocate a larger framebuffer. So fix up the printfs to use hdisplay/vsisplay since that should be uniform across the array. Regression from commit 919d68901187fa797a9b648fcf87c838fae22fa3 Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Thu Aug 29 15:33:53 2013 +0100 kms_flips: Operate on an array of crtc Buzilla: https://bugs.freedesktop.org/show_bug.cgi?id=68832 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-09-02lib/drmtest: Improve output when igt_waitchildren failsDaniel Vetter1-3/+7
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-02test/gem_concurrent_blt: remove hack for testing igt_forkDaniel Vetter1-2/+0
Oops, this shouldn't have been committed ... Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=68830 Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-02tests/gem_tiled_swapping: fix igt_require conversionDaniel Vetter1-1/+1
I seem to be incompetent at logic ... Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=68831 Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-30tests/gem_mmap_gtt: fix access checksDaniel Vetter1-2/+2
Reading manpages advisable ;-) Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-30tests/gem_mmap_gtt: clarify access check checks a bitDaniel Vetter1-2/+2
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-29lib/drmtest: Print info when children died due to signalsDaniel Vetter1-1/+6
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-29tests/gem_evict_everything: add swapping and forked subtestsDaniel Vetter1-9/+157
Much better at hitting the list corruption here on my machines than what we have thus far. Note that somehow I just can't reproduce the bug any more. No idea why. But I guess it's time to simply push this pile out. v2: Limit threads and rounds to something reasonable. v3: Use igt_permute_array to avoid EINVAL due to duplicated bo. v4: - Add a variant of the forked tests with multiple drm fds. - Tune the swapped forked tests a bit to complete in a reasonable amount of time. v5: Add some memory pressure from the cpu by using cpu mmaps (which directly hit shmem, so bypass gem completely). Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-29tests/gem_evict_*: Fix leak in copyDaniel Vetter2-0/+2
This turned out to be the reason one one of my tests was hitting the list corruption bug - we need a good deal more memory pressure. So I'll now add a new testcase for that. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-29tests/gem_tiled_swapping: Use igt_requireDaniel Vetter1-13/+3
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-29lib/drmtest: extract igt_fork from gem_concurrent_bltDaniel Vetter3-34/+103
Making sure that we correctly collect the exit codes from all children is a bit a hassle. So add another magic igt codeblock for easy forking and joining. Note that children are (currently at least) not allowed to call igt_skip. Add an assert to enforce this. v2: - Properly propagate the exit code. - Fix the segfault. - Add a child int and num_children paramter to the magic codeblock as suggested by Chris Wilson. - Don't dump noise into stdout when a child thread fails, the parent will do that for us already. v3: Now with some docs. v4: Fixup igt_waitchildren to properly reset state so it can be used again. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-29kms_flip: Remove debugging leftoversChris Wilson1-2/+0
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-29kms_flip: Set everything to zero to disable a CRTCChris Wilson1-3/+11
Just setting fb=0 is not enough as the kernel thinks userspace is insane. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-29kms_flip: Use the first mode if we find no matching modes for the crtc pairChris Wilson1-1/+5
We will check that we can set the mode on both crtcs before use, so hopefully this will work... Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-29kms_flip: Hook up primary events for page-flipsChris Wilson1-19/+28
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-29kms_flip: Run on pairs of connected outputs.Chris Wilson1-13/+209
The goal is to flip the same framebuffer on a pair of CRTCs (clone mode) and check that (a) the flip works in all combinations of workloads, and (b) that we can hit the desired refresh rate under the simplest, most ideal of conditions. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-29kms_flips: Operate on an array of crtcChris Wilson1-55/+79
This should be no functional change as we operate on an array of crtc[1]. Later we shall test clone mode across a number of crtc. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-29kms_flip: Exercise flip-vs-renderChris Wilson4-32/+103
For machine with split BCS/RCS rings, we also need to test whether we correctly wait upon outstanding render work before flipping and changing modes. This should also serve to exercise the ring selection code for flips. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-29overlay: Increase idle timeout to 30sChris Wilson1-4/+6
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-29overlay: Hide idle processesChris Wilson2-1/+17
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-29overlay: Autohide Flip counter after a period of inactivityChris Wilson1-25/+28
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-29overlay: Monitor per-ring context switch rateChris Wilson3-11/+61
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-28overlay: Make it easier to reniceChris Wilson1-2/+10
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>