- Nov 13, 2019
-
-
Arkadiusz Hiler authored
Sometimes we end up in /bin and I am not able to explain that just by looking at the machine or the IGT tarball that was deployed there so let's get some more breadcrumbs. Cc: Petri Latvala <petri.latvala@intel.com> Issue: #12 Signed-off-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by:
Petri Latvala <petri.latvala@intel.com>
-
Juha-Pekka Heikkilä authored
instead of 0.5 use 1.0 for white color, this is due to bit replication effect. Also set cairo to use same blending mode as what HW uses. Signed-off-by:
Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Reviewed-by:
Mika Kahola <mika.kahola@intel.com>
-
Juha-Pekka Heikkilä authored
casting unsigned char pointer to int pointer causes gcc to be unhappy with comment: "warning: dereferencing type-punned pointer will break strict-aliasing rules" Signed-off-by:
Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Reviewed-by:
Petri Latvala <petri.latvala@intel.com>
-
Chris Wilson authored
The kernel is now enforcing that clients are not allowed to block higher priority contexts from accessing the GPU; one is no longer allowed to sleep for a second hogging the GPU. Reduce the sleep down to 50ms, short enough not to anger the preempt-off checks while long enough for any ordinary GPU work to complete. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by:
Tvrtko Ursulin <tvrtko.ursulin@intel.com>
-
Chris Wilson authored
The pair of *-hang-all will generate sufficient hangs for the kernel to ban the client. This is unfortunate as it means all further tests are skipped. Ask nicely not to be banned. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by:
Tvrtko Ursulin <tvrtko.ursulin@intel.com>
-
Chris Wilson authored
Within this set of fence execution tests, we never once try to modeset; being KMS master is not required. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by:
Tvrtko Ursulin <tvrtko.ursulin@intel.com>
-
- Nov 12, 2019
-
-
Chris Wilson authored
If a test is only targeting the GGTT API and its corner cases, it can only run if we have a mappable aperture. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Antonio Argenziano <antonio.argenziano@intel.com> Acked-by:
Antonio Argenziano <antonio.argenziano@intel.com>
-
Arkadiusz Hiler authored
Our list was something between Wayland and Linux Kernel list implementations, right in the uncanny valley. On top of that it falsely claimed that it's a straight copy from the Wayland project. Let's make our impl more akin to the kernel one to ease the cognitive dissonance for the developers working on all those projects. This patch: * mimics the current kernel list interface * separates IGT helpers in the source files * adds brief explanation and code example for igt-doc * introduces igt_list.c as static inlines are not visible in the docs v2: mimic the kernel instead of wayland (Chris) - _head suffix for the sentinel/link struct - _entry_ in iterator names that go over the elements v3: I forgot to merge this in time and there was another call site that had to be converted in gem_spin_batch.c Cc: Petri Latvala <petri.latvala@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Acked-by:
Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by:
Petri Latvala <petri.latvala@intel.com>
-
Chris Wilson authored
Register a userspace fault handler for a memory region that we also pass to the GPU via userptr, and make sure the pagefault is properly serviced before we execute. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Reviewed-by:
Tvrtko Ursulin <tvrtko.ursulin@intel.com>
-
- Nov 11, 2019
-
-
Arkadiusz Hiler authored
The following error looks quite mysterious: $ ../../tests/igt_command_line.sh kms_ccs ./kms_ccs: Checking invalid option handling... Checking valid option handling... Checking subtest enumeration... FAIL: ./kms_ccs Let's add some explanation when we fail the subtests enumeration checks so people are not completely baffled when they get failures from the CI. Cc: Mika Kahola <mika.kahola@intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by:
Petri Latvala <petri.latvala@intel.com>
-
Petri Latvala authored
Commit f56ed6b1 ("kms_busy: Rename tests so pipe-specific subtests are blacklistable") renamed the subtests but fast-feedback.testlist change was forgotten. Oopsie! Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Cc: Martin Peres <martin.peres@linux.intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Chris Wilson authored
We cannot control how long RCU takes to find a quiescent point as that depends upon the background load and so may take an arbitrary time. Instead, let's try to avoid that impacting our measurements by inserting an rcu_barrier() before our critical timing sections and hope that hides the issue, letting us always perform a fast reset. Fwiw, we do the expedited RCU synchronize, but that is not always enough. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Chris Wilson authored
igt_aux.h already provides the optimal igt_fls(), so use that in preference to open coding the brute force version. Reported-by:
Stuart Summers <stuart.summers@intel.com> Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Stuart Summers <stuart.summers@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Petri Latvala authored
Blacklist pipes E and F usage even when the subtest name ends in pipe-x. Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Cc: Martin Peres <martin.peres@linux.intel.com>
-
Petri Latvala authored
The blacklist for pipes E and F are not capturing kms_busy's usage of them, because of the differing naming convention. Make that more uniform. Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Cc: Martin Peres <martin.peres@linux.intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
- Nov 08, 2019
-
-
Arkadiusz Hiler authored
So when we start sending emails about those failures including `| tail -n 20` will actually make sense. v2: make -j $(nproc) by default (Petri) Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by:
Petri Latvala <petri.latvala@intel.com>
-
José Roberto de Souza authored
Each call to igt_debugfs_read() opens a file descriptor to debugfs, calls igt_debugfs_simple_read() and then closes it. So lets stop this waste of time and reuse the debugfs file descriptor that we already have. Cc: Jeevan B <jeevan.b@intel.com> Cc: Anshuman Gupta <anshuman.gupta@intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Signed-off-by:
José Roberto de Souza <jose.souza@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
José Roberto de Souza authored
igt_debugfs_simple_read() requires the debugfs file descriptor not the drm device file descriptor, so the requirement check was complete broken. Cc: Jeevan B <jeevan.b@intel.com> Cc: Anshuman Gupta <anshuman.gupta@intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Signed-off-by:
José Roberto de Souza <jose.souza@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
- Nov 07, 2019
-
-
Petri Latvala authored
Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Fixes: 99f04b14 ("igt: Another combinatorial exercise for blits") Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Chris Wilson authored
The aim of this test is to combine gem_linear_blits, gem_tiled_blits etc into one test runner that covers investigation into HW alignment issues as well as driver boundaries (relocs, access, thrashing). This here is but a start! See also gem_concurrent_blits which looks for coherency issues between parallel execution. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Katarzyna Dec <katarzyna.dec@intel.com> Cc: Vanshidhar Konda <vanshidhar.r.konda@intel.com> Reviewed-by:
Vanshidhar Konda <vanshidhar.r.konda@intel.com>
-
- Nov 06, 2019
-
-
Chris Wilson authored
If the device does not expose an aperture for indirect access with detiling functionality, the kernel rejects an attempt to create such a mapping with -ENODEV. If the ioctl is not supported, we can skip all of our mmap_gtt specific tests. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Abdiel Janulgue <abdiel.janulgue@linux.intel.com> Cc: Matthew Auld <matthew.auld@intel.com> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Reviewed-by:
Matthew Auld <matthew.auld@intel.com> Reviewed-by:
Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
-
- Nov 05, 2019
-
-
Chris Wilson authored
As the scratch buf is shared between the two requests on both engines, we need to wait for both to finish using the buffer before we reset it. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Reviewed-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Jeevan B authored
Add a subtest for DC3CO video playback case to generate selective frame update and validate that system stays in DC3CO state during execution. v2: Changed PSR2 idle check to sleep check and addressed cosmetic changes. v3: Renamed a function and restructured code. v4: Cosmetic changes. v5: Removed DC5 check, Platform check and a function parameter. Renamed a function name as per Arek and Imre's Comments. v6: Added a new function require_dc_counter as per Arek's Comments. The test is now running based on time instead of the number of frames increased frame delay from 1 to 1.5 as per Imre's Comments. v7: Removed psr2_active_sleep_check and corrected the switch indentation. v8: Changed skip to assert in read_dc_counter function and changed IGT description Signed-off-by:
Jeevan B <jeevan.b@intel.com> Signed-off-by:
Ramalingam C <ramalingam.c@intel.com> Reviewed-by:
Anshuman Gupta <anshuman.gupta@intel.com> Acked-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Link: https://patchwork.freedesktop.org/patch/338131/?series=66648&rev=8
-
Anshuman Gupta authored
Add DC3CO IGT validation prerequisites stuff so we can enable DC3CO IGT test. v2: Removed psr2_idle_wait_entry and get_psr2_status function. v3: Changed macro definition and removed extra line. v4: Simplified edp_psr2_enabled function as per Arek's comments. v5: Simplified read_dc_counter function as per Arek's comments. Signed-off-by:
Anshuman Gupta <anshuman.gupta@intel.com> Signed-off-by:
Jeevan B <jeevan.b@intel.com> Signed-off-by:
Ramalingam C <ramalingam.c@intel.com> Reviewed-by:
Animesh Manna <animesh.manna@intel.com> Acked-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Link: https://patchwork.freedesktop.org/patch/338130/?series=66648&rev=8
-
- Nov 04, 2019
-
-
Chris Wilson authored
Allow the subtests that want to limit the test to a single engine, to limit the test to a single engine. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> Reviewed-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Chris Wilson authored
After any process termination, use an rcu-barrier to be sure that any deferred struct file cleanup has been performed. By being consistent in our paranoia here means that we can rule out more false positives and so focus on what remains. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Andi Shyti <andi.shyti@intel.com>
-
- Nov 02, 2019
-
-
Chris Wilson authored
Find all the perf* selftests and expose them in our igt. In CI we expect these not to be run in BAT (since they are just performance tests rather than conformance), but expect the results to be available from the shards. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Matthew Auld <matthew.auld@intel.com> Cc: Tomi Sarvela <tomi.p.sarvela@intel.com> Acked-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com>
-
- Nov 01, 2019
-
-
Chris Wilson authored
The gem_exec_reloc basic subtests cover a couple dozen basic ABI sanitychecks, aiming to prove the ABI works. While relocations used to be essential, they are no longer the basis of current clients who all softpin. It is a stagnant portion of the ABI that does not contribute much to overall driver health (the complicated portions of relocs are covered in the smoketests like gem_exec_parallel and gem_exec_gttfill). However, even though each of the basic subtest is trivial and runs in very little time, since CI is running each individually the time between tests mounts up (especially on eMMC devices like fi-kbl-soraka). By moving these tests to the shards we should speed up BAT on the ratelimiting fi-kbl-soraka, while losing no coverage overall -- and hopefully without losing any of the predictive failure coverage in BAT. This stagnant bit of uAPI/uABI will remain checked by the irregular idle runs. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Cc: Tomi Sarvela <tomi.p.sarvela@intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Cc: Martin Peres <martin.peres@linux.intel.com> Acked-by:
Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Acked-by:
Petri Latvala <petri.latvala@intel.com>
-
- Oct 31, 2019
-
-
Add a test that show how to submit parallel spinners to all engines, either from one context or a different context per engine; and verifies that only one spinner is on each. Signed-off-by:
Vanshidhar Konda <vanshidhar.r.konda@intel.com> Reviewed-by:
Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk>
-
Ville Syrjälä authored
The vblank tests try to make sure a relative vblank wait of 2 counts completes in ~1-2 frames (depends on how far along the first frame we are when initiating the wait). The actual limits we check are 0.9 to 2.1 frames to account for inaccuracies in the reported dotclock. Unfortunately it seems we either have even more inaccurate dotclocks or scheduling latencies and whatnot are pushing that out quite a bit further. So let's extend the end limit to ~2.6 frames to cut down on the noise a bit. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=111609 Signed-off-by:
Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by:
Chris Wilson <chris@chris-wilson.co.uk>
-
Ville Syrjälä authored
Only test one plane of each type (HDR, SDR UV, SDR Y) on icl+. For the purposes of validating pixel formats this should be sufficient as the programming of each plane of the same type is identical and as such it's unlikely we'd have different bugs between them. As before we'll leave the full test set available to be run at the user's discretion via --extended. v2: Pimp comment (Petri) Signed-off-by:
Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by:
Petri Latvala <petri.latvala@intel.com>
-
Chris Wilson authored
It seems the first rcu barrier may race with the addition of the file to the rcu task list; so wait again. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Andi Shyti <andi.shyti@intel.com>
-
Chris Wilson authored
And initialise fence to -1 to avoid closing stdin (fd:0)! The delayed fput is first queued with schedule (task_work) before being rcu freed. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Andi Shyti <andi.shyti@intel.com>
-
- Oct 30, 2019
-
-
Chris Wilson authored
Some time ago amdgpu changed their ABI to reject unknown compute rings, so we should query the available set prior to execution. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Arkadiusz Hiler authored
Update to the newest version. Python 3 is now the default one, so we can drop the suffix from pip invocation and we have to install it explicitly. Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by:
Petri Latvala <petri.latvala@intel.com>
-
Chris Wilson authored
For this test, we need a laptop running on battery power so that we can read the battery charge level before and after suspend. And then wait long enough for a reliable measure. References: https://bugs.freedesktop.org/show_bug.cgi?id=111909 Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
- Oct 29, 2019
-
-
Chris Wilson authored
Sanity test existing persistence and new exciting non-persistent context behaviour. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Cc: Michał Winiarski <michal.winiarski@intel.com> Cc: Jon Bloomfield <jon.bloomfield@intel.com> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Cc: Andi Shyti <andi.shyti@intel.com> Reviewed-by:
Andi Shyti <andi.shyti@intel.com>
-
Chris Wilson authored
Expose a new context parameters to opting out of persistent behaviour. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by:
Andi Shyti <andi.shyti@intel.com>
-
Chris Wilson authored
Update to commit a0e047156cde ("drm/i915/gem: Make context persistence optional") for I915_CONTEXT_PARAM_PERSISTENCE Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Andi Shyti <andi.shyti@intel.com>
-
Name of the i915 module parameter providing fault injection function is changing for consistency with a new convention of naming i915 driver internal functions called from the driver PCI .probe entry point. Adjust the test to use the new name. [ickle: keep the old parameter name around for stable testing] Suggested-by:
Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Signed-off-by:
Janusz Krzysztofik <janusz.krzysztofik@linux.intel.com> Cc: Michał Wajdeczko <michal.wajdeczko@intel.com> Cc: Michał Winiarski <michal.winiarski@intel.com> Cc: Piotr Piórkowski <piotr.piorkowski@intel.com> Cc: Tomasz Lis <tomasz.lis@intel.com> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Reviewed-by:
Chris Wilson <chris@chris-wilson.co.uk>
-