summaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)Author
2016-04-20tests/kms_rotation_crc: Adding rotation tests using COMMIT_ATOMIC pathpvishwak
Modified kms_rotation_crc to follow COMMIT_ATOMIC path if ATOMIC support is available from driver. If ATOMIC support is not present, tests will follow COMMIT_UNIVERSAL path. v2: (Marius) Updated commit message https://patchwork.freedesktop.org/patch/76040/ v3: (Marius) Added description in commit message https://patchwork.freedesktop.org/patch/79492/ Signed-off-by: Pratik Vishwakarma <pratik.vishwakarma@intel.com> [mcvlad: Re-worked a little comment description] Signed-off-by: Marius Vlad <marius.c.vlad@intel.com>
2016-04-20kms_atomic: Fix crtc_id comparison failing.Robert Foss
Fixed ctrc_id comparison failing due to bad initialization of crtc variable. Signed-off-by: Robert Foss <robert.foss@collabora.com> Signed-off-by: Marius Vlad <marius.c.vlad@intel.com>
2016-04-20tests: Separate tests with lots of subtestsFeceoru, Gabriel
Currently, when trying to run i-g-t tests with piglit, it takes up to 20s until the first test is executed. The main reason is that gem_concurrent_all has ~500k subtests, overkilling piglit. This patch separates gem_concurrent_* tests from the rest of the tests, creating two files test-list.txt and test-list-full.txt. The piglit can now enumerate the i-g-t tests within a decent few seconds. The second list could be used when trying to execute specific these tests. v2: Rebased Signed-off-by: Gabriel Feceoru <gabriel.feceoru@intel.com> Signed-off-by: Marius Vlad <marius.c.vlad@intel.com>
2016-04-20tests/kms_pipe_crc_basic: Don't suspend the machine if the pipe is not present.marius vlad
suspend-read-crc-pipe will perform a suspend and then skip the test in case the pipe is not present or is fused w/ another pipe. Skip the test before doing the suspend. v2: Somehow the subject was trimmed. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Marius Vlad <marius.c.vlad@intel.com>
2016-04-20ksm_pipe_color: Set legacy gamma values inside loop.Bob Paauwe
When testing multple outputs, make sure to set the gamma values before testing the output. Otherwise we're testing using the gamma values that were reset after last output was tested. Without this, the first output passes, but each output after that will fail. Signed-off-by: Bob Paauwe <bob.j.paauwe@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Signed-off-by: Marius Vlad <marius.c.vlad@intel.com>
2016-04-20igt/gem_concurrent_blit: Ensure we only shrink the child buffersChris Wilson
As we reuse the parent arrays under the assumption that the child uses fewer buffers, make sure that is true. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-18igt/gem_exec_nop: Fix time units for assertion printfChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-18igt/gem_ctx_param: RelabelChris Wilson
Checking parameters is not interesting for BAT, it is a simple ABI test that only provides coverage of the CONTEXT_GETPARAM and CONTEXT_SETPARAM ioctls, and no deeper. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-16gem_exec_lut_handle: Fix presumed_offset to force relocation on full-ppgttChris Wilson
If the object is at offset 0, quite likely using full-ppgtt, then the presumed_offset set also to 0 causes the relocation to be skipped. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-15igt/gem_mocs_settings: Check for pollution of default contextsChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-15igt/drv_module_reload_basic: Do not require snd-hda-intelTvrtko Ursulin
Recent refactoring has made absence of snd-hda-intel a test failure do the respective modprobe being at the end of a reload function now. Only fail in this case if module was previously unloaded. Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-15tests/kms_addfb_basic: Set tiling in addfb25 subtestTomeu Vizoso
When moving the call to gem_set_tiling into the subtests, the one needed by addfb25-framebuffer-vs-set-tiling was left out. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
2016-04-15igt/gem_pwrite: Add backwards/random access patternsChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-15igt/gem_busy: Slow down the writerChris Wilson
Add a few more (128) loops to the page full of MI_STORE_DWORD in an attempt to try and slow down the execution to the point where a full-debug kernel can beat the GPU. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-15igt/gem_exec_nop: Correct %3.f typoChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-14igt/gem_exec_nop: Explain the parallel execution assertionChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-14tests: Open any driverTomeu Vizoso
For those tests that now pass on drivers other than i915, call drm_open_driver_master with DRIVER_ANY. Also do so from igt_enable_connectors. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Daniel Stone <daniels@collabora.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2016-04-14kms_addfb_basic: Get intel gen from within subtestTomeu Vizoso
Because determining the Intel GFX generation requires a call to DRM_IOCTL_I915_GETPARAM, move the code that requires it to a subtest that can be skipped on drivers other than i915. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Daniel Stone <daniels@collabora.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2016-04-14kms_addfb_basic: Move calls to gem_set_tiling to the subtestsTomeu Vizoso
So they don't cause unrelated subtests to be skipped when testing drivers other than i915. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Daniel Stone <daniels@collabora.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2016-04-14kms_addfb_basic: Split tiling_tests offTomeu Vizoso
Move tests requiring tiled BOs to the end so they don't cause unrelated subtests to be skipped when testing drivers with only dumb buffer support. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Daniel Stone <daniels@collabora.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2016-04-14kms_addfb_basic: move tiling functionality into each subtestTomeu Vizoso
Because calls to gem_set_tiling will cause the subtest to be skipped on drivers other than i915, move them to each subtest that needs them so the other subtests aren't skipped as well. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Daniel Stone <daniels@collabora.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2016-04-14kms_addfb_basic: call igt_create_bo_with_dimensionsTomeu Vizoso
Many tests can do their work on drivers other than i915 and even with just dumb buffers, so call igt_create_bo_with_dimensions instead of gem_create which will paper out the differences and call the proper ioctls or cause the subtest to be skipped if that's not possible. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Daniel Stone <daniels@collabora.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2016-04-14lib: Add wrapper for DRM_IOCTL_MODE_CREATE_DUMBTomeu Vizoso
In order to test drivers that don't have support for proper buffer objects, add a wrapper for creating dumb buffer objects that will be called from the lib code for those subtests that don't need to care. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Daniel Stone <daniels@collabora.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2016-04-14igt/gem_ctx_create: Broaden per-engine testingChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-12igt/gem_exec_create: Add a "leak" testChris Wilson
Don't close the objects, but just mark them as unneded. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-12igt: Add a basic test to stress allocation of batchesChris Wilson
Run for 20s and don't expect to crash from memory exhaustion or sillies. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-12test/gem_mocs_settings: Testing MOCS register settingsPeter Antoine
The MOCS registers were added in Gen9 and define the caching policy. The registers are split into two sets. The first set controls the EDRAM policy and have a set for each engine, the second set controls the L3 policy. The two sets use the same index. The RCS registers and the L3CC registers are stored in the RCS context. The test checks that the registers are correct by checking the values by directly reading them via MMIO, then again it tests them by reading them from within a batch buffer. RCS engine is tested last as it programs the registers via a batch buffer and this will invalidate the test for workloads that don't use the render ring or don't run a render batch first. v2: Reorganised the structure. Added more tests. (Chris Wilson) v3: Fixed a few bugs. (Chris Wilson) v4: More Tidy-ups. (Chris Wilson) SKL does does not have a snoop bit. (Peter Antoine) Signed-off-by: Peter Antoine <peter.antoine@intel.com>
2016-04-11igt/gem_busy: fix compaction of multiple store commandsChris Wilson
Missed increment of the batch offset between commands. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-11igt/gem_concurrent_blit: Tweak num_buffers to just exceed targetChris Wilson
Remember that we allocate and use twice as many buffers as specified (we have a num_buffers array of src and dst) and so adjust the computation such that the combined allocation matches the target. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-10igt/gem_concurrent_blit: Purge the libdrm caches before cloningChris Wilson
When forking, the entire VM is cloned including the VMA backed by GEM objects from the libdrm buffer cache. This is not only slow, but can also cause the system to exceed the maximum number of VMA and premature test failure. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-10igt/gem_shrink: Fix execution object offsetChris Wilson
An off-by-one caused us to execute the blank object rather than the batch. References: https://bugs.freedesktop.org/show_bug.cgi?id=94801 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-09lib: Remove defunct stop_ringsChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-09igt/kms_flip: Convert over to real hang injectionChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-09igt/kms_pipe_crc_basic: Replace stop_rings with igt_hang_ringChris Wilson
We can inject a real GPU hang for greater effect! Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-08tests/pm_rps: Increase timeouts to 15 secondsVille Syrjälä
My BSW takes ~12 seconds to go back to idle after high load, so the current 10s timeouts are too short. Bump them up to 15s. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2016-04-05kms_atomic: Skip rather than fail on non-atomic driversMatt Roper
i915 does not yet support the atomic modesetting interface by default; at the moment it must be turned on explicitly via an 'i915.nuclear_pageflip' kernel command line option. We should skip (rather than fail) this IGT test when running on kernels that don't advertise support for atomic modesetting. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93014 Signed-off-by: Matt Roper <matthew.d.roper@intel.com> Reviewed-by: Daniel Stone <daniels@collabora.com>
2016-04-04igt/gem_shrink: Reduce oom spamChris Wilson
Since we are deliberately going to fail the mmap() allocation, don't assert. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-04igt/gem_shrink: Fix leak in userptr, add anotherChris Wilson
Hitting oom from userptr because we had N threads all consuming all of memory, wasn't the intention but the bugs it found were useful! Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-02igt/gem_shrink: Exercise with userptr stressChris Wilson
Add additional mempressure in the form of userptr. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-02igt/gem_shrink: Add pread/pwrite stressChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-01igt/pm_rps: Trigger a real GPU resetChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-01igt/gem_exec_reloc: Exercise read-only relocation arraysChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-01igt/gem_busy: Try to slow down executionChris Wilson
With lockdep enabled, the driver overhead is enormous and we need to slow down the GPU to compenstate (otherwise the GPU is already idle when we expect busyness). So do more work per batch. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-01igt/gem_busy: Cap number of tries to create busy ringsChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-04-01igt/gem_busy: Use a boatload of store-dwords to force ring busynessChris Wilson
A little more inelegant as we can't control the delay very well, but it should prove more vesatile and broaden the test coverge (and still be quick enough for basic). Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-03-29igt/gem_exec_suspend: Add basic selftestChris Wilson
The selftest is already before the suspend/hibernate tests, but to be clear also run it first (it only takes a millisecond) by itself. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-03-29igt/gem_exec_store: Exercise write orderingChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-03-28igt/gem_exec_nop: Relax parallel assertion for short ringsChris Wilson
On bdw, the render ring becomes full and limits dispatch across all rings. Adjust the expected latency to take this into account. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-03-28igt/gem_exec_nop: Add expectancy of independent execution between enginesChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-03-26igt/gem_ctx_switch: Add basic test for context switchingChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>