summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2014-05-22tests/kms_pipe_crc_basic: Add gpu hang testsHEADmasterDaniel Vetter1-2/+58
Currently pipe CRC support is broken after gpu hangs. This tests for this bug. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-22tests/kms_pipe_crc_basic: Add suspend testsDaniel Vetter1-0/+7
Currently broken ... Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-22tests/drv_hangman: Add subtest for error state capture/dumpMika Kuoppala1-1/+151
Guarantees that error capture works at a very basic level. v2: Also check that the ring object contains a reloc with MI_BB_START for the presumed batch object's address. v3: Chris review comments: - Move variables to local scope. - Do not assume there is only one request. - Some gen encode flags into the BB start address. Also, use igt_set/get_stop_rings as suggested by Mika Kuoppala. v4: Make as a subtest of drv_hangman. v5: Rebase Signed-off-by: Oscar Mateo <oscar.mateo@intel.com> <v4> Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
2014-05-22tests/drv_hangman: Convert test from shell script to cMika Kuoppala4-71/+280
Mixing script and standlone tests didn't mix well with the strict i915_ring_stop flags handling. Also squash drv_missed_irq_hang to the new test. v2: - Remove missed irq test (Daniel Vetter) - gitignore fixed (Oscar Mateo) - fix check_other_clients to handle dangling fd's Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78322 Suggested-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Oscar Mateo <oscar.mateo@intel.com> <v1> Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
2014-05-22igt/gem_userptr_blits: Fix up last minute API changesChris Wilson1-3/+3
When the patch was merged, the ioctl numbers had to be adjusted to leave no holes. Also there was a final piece of munging of the API to downgrade unsynced userptr for export over dma-buf. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-05-22tests/kms_mmio_vs_cs_flip: Add a test case to exercise mmio vs. CS flip racesVille Syrjälä2-0/+581
kms_mmio_vs_cs_flip has two subtests: - setplane_vs_cs_flip tests the interaction between fullscreen sprites and CS flips - setcrtc_vs_cs_flip tests the interaction between primary plane panning and CS flips v2: Skip sprite test when there are no sprites Reduce busy_bo to 64MB (now works on my gen2) Handle pipe vs. port incompatibility v3: Handle missing auto pipe crc Reviewed-by Rodrigo Vivi <rodrigo.vivi@gmail.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2014-05-22tests/kms_sink_crc_basic: Use igt_assertDaniel Vetter1-12/+3
Less verbose code makes for clearer test logic. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-22tests/kms_sink_crc_basic: skip properlyDaniel Vetter1-2/+1
Not running the test is not failing. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-22Revert "Revert "store_dw_loop: make loops smaller""Daniel Vetter5-5/+5
This reverts commit 3005ac3ee8d7aede73a3e63d2068a6074156ebe5. QA has done the testing we've wanted. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-20tests/kms_flip: various improvementsDaniel Vetter1-5/+12
- Some debug logging for the ts continuity checks. - Add a plain vblank-vs-suspend test where kms_flip doesn't switch off the displays first. - Ensure that we do at least 2 rounds, the suspend tests bailed out after 1 round and so didn't test anything. - Frob the testnames a bit. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-20tests/kms_flip: Add vblank vs. gpu hang testcaseDaniel Vetter1-0/+11
Currently broken :( Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-19assembler: distinguish the channel of .z from the condition of .zXiang, Haihao1-0/+45
The scratch patch only works for generic register Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=75631 Tested-by: Matt Turner <mattst88@gmail.com> Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com> Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2014-05-19assembler: switch the order of swizzle and regtype to match the BNF of the ↵Xiang, Haihao1-3/+3
assembly Fortunately our existing source didn't use swizzle. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=75631 Tested-by: Matt Turner <mattst88@gmail.com> Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com> Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2014-05-19igt/quickdump: vlv: dump FLISDSI regs tooImre Deak7-0/+66
Signed-off-by: Imre Deak <imre.deak@intel.com>
2014-05-19igt/intel_iosf: rename IOSF sideband opcodes according to the specImre Deak2-13/+16
These opcodes are not specific for an endpoint, but are the same for all endpoints. So rename them accordingly, using the name the VLV2 sideband HAS uses. Also move the macros to the .c file, since they aren't used anywhere else. Signed-off-by: Imre Deak <imre.deak@intel.com>
2014-05-19Revert "store_dw_loop: make loops smaller"Daniel Vetter5-5/+5
This reverts commit f00efff326610fdba92dbc91d951790a3320052e. This is a temporary revert since I want QA to first test with the original testcase whether it got faster again. This is to test the effects of commit 227f782e4667fc622810bce8be8ccdeee45f89c2 Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Thu May 15 10:41:42 2014 +0100 drm/i915: Retire requests before creating a new one We should revert this revert again as soon as QA has completed testing. References: https://bugs.freedesktop.org/show_bug.cgi?id=78024 Cc: Jesse Barnes <jbarnes@virtuousgeek.org> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-19store_dw_loop: make loops smallerJesse Barnes5-5/+5
These tests are really for catching TLB or GTT mapping failures due to bad programming in the kernel driver. We've never needed more than a few pages worth of data write to actually see those.
2014-05-19igt/gem_bad_reloc: Refine for limited kernel w/aChris Wilson1-15/+31
One proposed solution only fixes up the SNA behaviour, so reduce the test case to probe only that particular pathology. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-05-16tests/kms_sink_crc_basic: Put into righ Makefile targetDaniel Vetter1-1/+1
If it's a simple test, it needs to be in the simple lists. Tests with subtests go into the _M tests. Without that test enumeration is all screwed up. Cc: Rodrigo Vivi <rodrigo.vivi@gmail.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-16tests/kms_flip: test a fb backed by a bo too big/small for its own goodOscar Mateo1-4/+18
This is a "review by igt test" for a bug located in i915_gem_object_pin_to_display_plane and fixed by: commit 392013bdd4b6128795e33c84bd6d6d3fd66ff0a3 Author: Oscar Mateo <oscar.mateo@intel.com> Date: Fri May 16 11:23:12 2014 +0100 drm/i915: Gracefully handle obj not bound to GGTT in is_pin_display Otherwise, we do a NULL pointer dereference. I've seen this happen while handling an error in i915_gem_object_pin_to_display_plane(): If i915_gem_object_set_cache_level() fails, we call is_pin_display() to handle the error. At this point, the object is still not pinned to GGTT and maybe not even bound, so we have to check before we dereference its GGTT vma. v2: Chris Wilson says restoring the old value is easier, but that is_pin_display is useful as a theory of operation. Take the solomonic decision: at least this way is_pin_display is a little more robust (until Chris can kill it off). v2: Avoid code duplication by using igt_create_fb_with_bo_size() as requested by Ville Syrjälä (original author of the "too big" test idea). Signed-off-by: Oscar Mateo <oscar.mateo@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2014-05-16lib/igt_fb: igt_create_fb_with_bo_sizeOscar Mateo2-7/+41
Useful for testing bigger/smaller fb-wrapped buffer objects. Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Oscar Mateo <oscar.mateo@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2014-05-16tests/kms_sink_crc_basic: Basic test to verify Sink CRC debugfs.Rodrigo Vivi3-0/+203
v2: rebase after a long time. Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-16tests/pm_pc8 -> pm_rpm renameDaniel Vetter5-3/+5
Plus naming convention for runtime pm tests to have "rpm" somewhere in their tests. Note that all the pc8-specific tests (for e.g. residency or similar) already have pc8 in their subtest names, so we don't lose any information here. Cc: "Yang, Guang A" <guang.a.yang@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-16tests/pm_pc8: Use igt_assert_cmpintDaniel Vetter1-2/+1
More pretty! Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-15tests/gem_bad_reloc: Adding missing include.Rodrigo Vivi1-0/+1
It was breaking compilation. Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
2014-05-15tests/kms_render: don't loop through modesDaniel Vetter1-8/+4
We kinda have testdisplay for this ... and doing this tends to take forever. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77709 Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-15tests/gem_reg_read: Fix errno checkDaniel Vetter1-1/+1
So I accidentally fixed a check when converting to the new macros and the kernel never returned -ENOENT for invalid regs. Adjust the test. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-15tests/kms_flip: nasty power management testsDaniel Vetter1-5/+40
These check whether everything is still ok wrt vblank handling after runtime pm and system suspend-resume. In addition to the usual checks they also ensure that the vblank frame counter isn't totally ridiculous, something Keith complained about aeons ago. With Ville's drm_vblank_on/off rework this should now be fixed and solid. v2: - Ignore seq_step, vblanks completely immediately when the crtc goes off - Only run system suspend/resume tests once. Cc: Keith Packard <keithp@keithp.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-15lib/igt_aux: Extract runtime pm helpers from pm_pc8Daniel Vetter3-93/+128
I want to use them elsewhere ... Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-15intel-gpu-tools: Skip kms_fence_pin_leak if no cairoTim Gore1-1/+2
The kms_fence_pin_leak test uses igt_kms.c which in turn uses cairo. So in Android.mk add this test to the skip list if we dont have cairo Issue: VIZ-3894 Signed-off-by: Tim Gore <tim.gore@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-15igt/gem_ringfill: Only check for rendercopy when testing render ringChris Wilson1-7/+7
Overzealous test runner ftl. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78591 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-05-15igt/gem_bad_reloc: Restrict negative reloc tests to IVB+Chris Wilson1-0/+2
The bug doesn't seem to occur on SNB, so we can skip the workaround and hence we do not expect the kernel to prevent invalid relocated offsets. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-05-15gem_exec_lut_handle: Do a warm up pass before timingChris Wilson1-0/+2
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-05-15gem_bad_reloc: Add subtest for LUT-based execbuffersChris Wilson1-13/+15
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-05-15Add gem_bad_relocChris Wilson3-0/+118
This test feeds a batch containing self-references into the kernel and checks that the relocation offsets remain as valid GTT addresses. This is to exercise SNA passing in negative relocation deltas which can hang the GPU if they wrap around. References: https://bugs.freedesktop.org/show_bug.cgi?id=78533 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-05-14tests/kms_flip: Fix vblank ts checkDaniel Vetter1-1/+1
Oops, fumbled that in the conversion. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-14tests/kms_fence_pin_leak: Exercise full ppgtt fence pin_count leak in the kernelVille Syrjälä2-0/+240
The kernel full ppgtt support has a bug where it can drop a pinned fence to the floor, hence we leak the pin_count as the subsequent fence unpin becomes a nop. We can trigger it easily by unbinding a buffer from a ppgtt address space while the buffer is simultaneosly being used for scanout. Make the kernel leak the fence pin_count and trick it into picking a new fence register for the next scanout buffer. Looping like this for a while we leak the pin_count for all fence registers after which the kernel can no longer find a new fence register when it needs one. As a result we get back a SIGBUS from the GTT mmap access. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2014-05-14lib/igt_core: Fixup docs with symbolic exit codesDaniel Vetter1-3/+4
Conflict between me and Thomas pushing patches in parallel. Cc: Thomas Wood <thomas.wood@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-14lib: add exit status definesThomas Wood4-28/+50
Add defines for success, skip and timeout exit statuses. Suggested-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Thomas Wood <thomas.wood@intel.com>
2014-05-14lib: set a timeout when reading crc valuesThomas Wood1-0/+3
Signed-off-by: Thomas Wood <thomas.wood@intel.com> Acked-by: Damien Lespiau <damien.lespiau@intel.com>
2014-05-14lib: add igt_set_timeoutThomas Wood2-3/+43
Add a function to stop and fail a test after the specified number of seconds have elapsed. Signed-off-by: Thomas Wood <thomas.wood@intel.com> Acked-by: Damien Lespiau <damien.lespiau@intel.com>
2014-05-14tests/kms_flip: Use assertsDaniel Vetter1-32/+24
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-14tests/prime_nv_pcopy: Remove unused tiling testsDaniel Vetter1-253/+0
We now know that the hardware can't do this, and it's not designed to. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-14tests/prime_nv_pcopy: Drop return values from testsDaniel Vetter1-85/+36
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-14tests/prime_nv_pcopy: Drop return values from copy/check functionsDaniel Vetter1-101/+71
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-14tests/prime_nv_pcopy: Use asserts in setup codeDaniel Vetter1-68/+25
Now we even have more fine-grained checking and only skip if the nouveau card isn't supported, but fail properly if something else goes wrong. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-14tests/prime_nv_pcopy: Use asserts in nv_bo_allocDaniel Vetter1-60/+22
Step one to untangle the control flow in this test and replace it all with igt assert magic. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-14tests/prime_nv_api: Use asserts instead of control flowDaniel Vetter1-244/+81
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-14tests/gem_seqno_wrap: Replace control flow with assertsDaniel Vetter1-40/+22
Only tricky bit was a bit of debug output sprinkled all over, I've moved it all to cmp_bo. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-05-14tests: Use igt macros moreDaniel Vetter30-288/+131
Often just folding together of the common if (cond) printf; abort|igt_skip|igt_fail; pattern. But in a few cases I've ripped out more since the igt macros will already print the condition and errno. A few tests where more work (like ripping out return codes en masse) is needed left as-is. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>