- Apr 19, 2020
-
-
Lionel Landwerlin authored
In 15e8ffec ("tests/perf: respect gen11 restriction in disable subslices") I fixed the global-sseu-config subtest which was affected by the same issue. But the global-sseu-config-invalid subtest is also affected by the same Gen11 restriction. Signed-off-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Fixes: 779d43cd ("tests/perf: add global sseu parameter tests") Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/1543 Reviewed-by:
Chris Wilson <chris@chris-wilson.co.uk>
-
Chris Wilson authored
Instantiating the objects can be surprisingly, worryingly slow; even on big core LLC devices. Rather than worry about that and cause timeouts in simply setting up the test, apply a limit to the setup time so that we only use the amount of objects instantiated within the first 20s. Due to the quadratic behaviour being exposed by the test, this may not entirely eliminate the timeouts -- but at least the timeouts should then be for the right reason. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
- Apr 17, 2020
-
-
Chris Wilson authored
In a few cases, we hit a timeout where no process appears to be deadlocked (i.e. tasks stuck in 'D' with intertwined stacks) but everything appears to be running happily. Often, they appear to be fighting over the shrinker, so one naturally presumes we are running low on memory. But for tests that were designed to run with ample memory to spare, that is a little disconcerting and I would like to know where the memory actually went. sysrq('m'): Will dump current memory info to your console Sounds like that should do the trick. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Petri Latvala <petri.latvala@intel.com> Acked-by:
Petri Latvala <petri.latvala@intel.com>
-
Petri Latvala authored
To help verify correct deployment, add a --version flag to igt_runner that just prints the IGT-version text, the same tests would print. Note that only igt_runner gained the --version flag. igt_resume and igt_results don't do fancy flag handling, they only accept the directory to operate as their single arg. v2: Depend on version.h (CI) Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Cc: Tomi Sarvela <tomi.p.sarvela@intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Petri Latvala authored
To help verify correct deployment, add a --version flag that just prints the IGT-Version text. Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Cc: Tomi Sarvela <tomi.p.sarvela@intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
There is a test which verifies unloading of i915 driver module but no test exists that checks how a driver behaves when it gets unbound from a device or when the device gets unplugged. Implement such test using sysfs interface. Two minimalistic subtests - "unbind-rebind" and "unplug-rescan" - perform the named operations on a DRM device which is believed to be not in use. Another pair of subtests named "hotunbind-lateclose" and hotunplug-lateclose" do the same on a DRM device while keeping its file descriptor open and close it thereafter. v2: Run a subprocess with dummy_load instead of external command (Antonio). v3: Run dummy_load from the test process directly (Antonio). v4: Run dummy_load from inside subtests (Antonio). v5: Try to restore the device to a working state after each subtest (Petri, Daniel). v6: Run workload inside an igt helper subprocess so resources consumed by the workload are cleaned up automatically on workload subprocess crash, without affecting test results, - move the igt helper with workload back from subtests to initial fixture so workload crash also does not affect test results, - other cleanups suggested by Katarzyna and Chris. v7: No changes. v8: Move workload functions back from fixture to subtests, - register different actions and different workloads in respective tables and iterate over those tables while enumerating subtests, - introduce new subtest flavors by simply omitting module unload step, - instead of simply requesting bus rescan or not, introduce action specific device recovery helpers, required specifically with those new subtests not touching the module, - split workload functions in two parts, one spawning the workload, the other waiting for its completion, - for the new subtests not requiring module unload, run workload functions directly from the test process and use new workload completion wait functions in place of subprocess completion wait, - take more control over logging, longjumps and exit codes in workload subprocesses, - add some debug messages for easy progress watching, - move function API descriptions on top of respective typedefs. v9: All changes after Daniel's comments - thanks! - flatten the code, don't try to create a midlayer (Daniel), - provide minimal subtests that even don't keep device open (Daniel), - don't use driver unbind in more advanced subtests (Daniel), - provide subtests with different level of resources allocated during device unplug (Daniel), - provide subtests which check driver behavior after device hot unplug (Daniel). v10 Rename variables and function arguments to something that indicates they're file descriptors (Daniel), - introduce a data structure that contains various file descriptors and a helper function to set them all (Daniel), - fix strange indentation (Daniel), - limit scope to first three subtests as the initial set of tests to merge (Daniel). v11 Fix typos in some comments, - use SPDX license identifier, - include a per-patch changelog in the commit message (Daniel). v12 We don't use SPDX license identifiers nor GPL-2.0 in IGT (Petri), - avoid chipset, make sure we reopen the same device (Chris), - rename subtest "drm_open-hotunplug" to "hotunplug-lateclose", - add subtest "hotunbind-lateclose" (less affected by IOMMU issues), - move some redundant code to helpers, - reorder some helpers, - reword some messages and comments, - clean up headers. v13 Add test / subtest descriptions (patchwork). v14 Extract redundant device rescan and reopen code to a 'healthcheck' helper, - call igt_abort_on_f() on device reopen failure (Petri), - if any timeout set with igt_set_timeout() inside a subtest expires, call igt_abort_on_f() from a follow-up igt_fixture (Petri), - when running on a i915 device, require GEM and call igt_abort_on_f() if no usable GEM is detected on device reopen. v15 Add the test to CI blacklist (Martin). v16 Separate blacklist entry with a descriptive comment (Petri). Signed-off-by:
Janusz Krzysztofik <janusz.krzysztofik@intel.com> Cc: Antonio Argenziano <antonio.argenziano@intel.com> Cc: Daniel Vetter <daniel@ffwll.ch> Cc: Katarzyna Dec <katarzyna.dec@intel.com> Cc: Martin Peres <martin.peres@linux.intel.com> Acked-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Petri Latvala <petri.latvala@intel.com>
-
Nidhi gupta authored
Adding eDP support for Link Layer Compliance tool of DP-PHY test automation. Current Implementation of this compliance tool can be used for dp and eDP both. Hence extending to eDP too. Signed-off-by:
Nidhi Gupta <nidhi1.gupta@intel.com> Signed-off-by:
Ramalingam C <ramalingam.c@intel.com> Reviewed-by:
Animesh Manna <animesh.manna@intel.com> Link: https://patchwork.freedesktop.org/series/72783/#rev2
-
Add XYUV8888 to the list of DRM Formats to test. Also fix the byte order for the format. Signed-off-by:
Bob Paauwe <bob.j.paauwe@intel.com> Signed-off-by:
Jani Nikula <jani.nikula@intel.com>
-
- Apr 16, 2020
-
-
José Roberto de Souza authored
It was missing a ")" to be properly parsed. Reviewed-by:
Petri Latvala <petri.latvala@intel.com> Signed-off-by:
José Roberto de Souza <jose.souza@intel.com>
-
Chris Wilson authored
It's takes a long time to setup the test in CI, but how long? That is the question. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Chris Wilson authored
Our goal with this gem_*_blits variant is to exercise fence reuse, and since the fenced blits [of yore] can only fit into the fenceable region of the mappable aperture, we can limit our working set to cause thrashing of that region. This dramatically reduces the workload for big machines that were trying to trash everything. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Chris Wilson authored
The poll() is proving unreliable, where our tests timeout without the spinner being terminated. Let's try a blocking read instead! Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/1676 Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: "Dixit, Ashutosh" <ashutosh.dixit@intel.com> Reviewed-by:
"Dixit, Ashutosh" <ashutosh.dixit@intel.com>
-
- Apr 15, 2020
-
-
Chris Wilson authored
Use igt_dynamic_f for the dynamic discovered CRTC sets for each test. v2: The subsubtest names are slightly more compact and forced to conform to igt_runner/piglit rules: A-eDP1 AB-eDP1-eDP2 Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Petri Latvala <petri.latvala@intel.com> Cc: Martin Peres <martin.peres@linux.intel.com> Reviewed-by:
Petri Latvala <petri.latvala@intel.com>
-
Can't touch the memory if mmap returns MAP_FAILED. v2: s/(char *)-1)/MAP_FAILED/ (Mike Ruhl) Fixes: 9cff3be1("igt/gem_shrink: Reduce oom spam") Signed-off-by:
Ashutosh Dixit <ashutosh.dixit@intel.com> Reviewed-by:
Michael J. Ruhl <michael.j.ruhl@intel.com> Reviewed-by:
Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk>
-
Petri Latvala authored
This test has been spamming logs like crazy since 5.7-rc1, filling every disk in sight and causing CI processing to grind to a halt. Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Cc: Tomi Sarvela <tomi.p.sarvela@intel.com> Cc: Martin Peres <martin.peres@linux.intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by:
Chris Wilson <chris@chris-wilson.co.uk>
-
Arkadiusz Hiler authored
The default scenario is now performing all hotplugs with modes disabled on all connectors. This is the quickest of the tests and represents userspace not caring about the new display (e.g. explicitly disabled). *-hpd-enable-disable-mode covers the most common userspace behavior where each hotplug event is accompanied by a corresponding enabling / disabling commit. *-hpd-with-enabled-mode explicitly targets the scenario where we have mode enabled and never disable it as we do hotplugs to reproduce the issue we see with TypeC connectors for ICL and TGL. v2: - refresh igt_display output state after reprobing - get mode and set pipe only after we have connector plugged in v3: fix VGA subtest names (Kunal) Cc: Kunal Joshi <kunal1.joshi@intel.com> Cc: Imre Deak <imre.deak@intel.com> Issue: https://gitlab.freedesktop.org/drm/intel/issues/323 Signed-off-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by:
Kunal Joshi <kunal1.joshi@intel.com>
-
Arkadiusz Hiler authored
Each tests resets the state to be sure it starts with a clean slate. Let's add disabling modeset to the pile, to be sure that we get the hotplug events and the connector state is correct. Cc: Kunal Joshi <kunal1.joshi@intel.com> Cc: Imre Deak <imre.deak@intel.com> Issue: https://gitlab.freedesktop.org/drm/intel/issues/323 Signed-off-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by:
Kunal Joshi <kunal1.joshi@intel.com>
-
Arkadiusz Hiler authored
Doing disabling modeset from igt_display_require() is quite tricky, as there are some tests that depend on the leftover mode set by fbcon in order to work + PSR debugfs checks seem to behave a bit weird. While those issues are being worked on let's do a disabling modeset between igt_display_require() and chamelium_init() so port auto-discovery works reliably on all configurations. Issue: https://gitlab.freedesktop.org/drm/intel/issues/323 Cc: Kunal Joshi <kunal1.joshi@intel.com> Signed-off-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by:
Kunal Joshi <kunal1.joshi@intel.com>
-
- Apr 12, 2020
-
-
Chris Wilson authored
Different ppgtt should be independent under full-ppgtt. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
- Apr 10, 2020
-
-
Chris Wilson authored
Hang tests are slow since we must wait for the kernel to detect the GPU hang before it forcibly completes the execution and signals the fence. The flip is not allowed before the fence is signaled and so must wait. Our test is that the flip does eventually occur, we only need to do that once, and let the power of repeated runs across many machines weed out the corner cases. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by:
Andi Shyti <andi.shyti@intel.com>
-
Janusz Krzysztofik authored
Extend initial check for support of MMAP_GTT mapping to userptr with equivalent checks for each MMAP_OFFSET mapping type supported by i915 driver. Based on that, extend coverage of process-exit-gtt* subtests over non-GTT mapping types. In case of dmabuf-* subtests, use first supported mapping type if there are any. v2: Clear 'map' before reuse (Zbigniew). v3: Kill out-of-context errno check (Chris). Signed-off-by:
Janusz Krzysztofik <janusz.krzysztofik@linux.intel.com> Reviewed-by:
Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk>
-
Janusz Krzysztofik authored
Upgrade the subtest to use MMAP_GTT API v4 (aka MMAP_OFFSET), dynamically examine each mapping type supported by i915 driver. Signed-off-by:
Janusz Krzysztofik <janusz.krzysztofik@linux.intel.com> Reviewed-by:
Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
-
- Apr 09, 2020
-
-
Chris Wilson authored
Include the current spin->timerfd status in the warning message when the timeout did not fire. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Chris Wilson authored
Allow for a timerfd of 0, just in case some test closes stdin. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Lionel Landwerlin authored
Some HW woes are forcing us to store EU activity counters in a different way. Signed-off-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Acked-by:
Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
-
Chris Wilson authored
Check that our threaded timer to expire the igt_spin_t does fire! Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Chris Wilson authored
Since we probe the existence of the engines, we expect errno to be randomly set prior to starting the test. Lets reset it to 0 so that any error before the igt_dynamic_f test is not mistakenly printed by a failed test. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Mika Kahola authored
There was an error in commit 0ab05a51 ("tests/kms_concurrent: Test for maximum number of planes") that calculates the maximum number of supported planes. The patch proposes to test first if an atomic commit is successful with the selected number of planes. In case of a failure, the number of planes is reduced by one assuming that the failure was caused by bandwidth limit. The test loops at least as many iterations as there are planes defined by the platform. v2: Fix CI build failure (CI) Signed-off-by:
Mika Kahola <mika.kahola@intel.com> Reviewed-by:
Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
-
Mika Kahola authored
This reverts commit 2b65609b. Signed-off-by:
Mika Kahola <mika.kahola@intel.com> Acked-by:
Petri Latvala <petri.latvala@intel.com>
-
Chris Wilson authored
S4-devices is a debug only path, and while it can prove informative as to the nature of suspend issues, being a debug only path it is not so relevant towards the driver health. Relegate it to the shards and idle runs, so we can shave 20s off BAT. gem_exec_suspend@basic itself is just a test suspend, a sanitycheck to ensure the test is functional, for manual debugging of the tests. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Martin Peres <martin.peres@linux.intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Acked-by:
Martin Peres <martin.peres@linux.intel.com>
-
Chris Wilson authored
Sometimes the bg_load only wakes up once or twice in 3s. That's just unbelievable, so include some measurements to see how long the load spends in submission & waiting. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
- Apr 08, 2020
-
-
Chris Wilson authored
Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Chris Wilson authored
Tell the naughty child to use a separate i915 so that there is no possibility that it should overlap with anything else. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Arkadiusz Hiler authored
Chamelium provides us with hsync_offset value which is read form its receiver register described as "Hsync start edge to H active start edge", vsync_offest is analogous. Let's calculate the correct things on IGT side. v2: keep the original checks for HDMI (Petri) Cc: Petri Latvala <petri.latvala@intel.com> Cc: Nidhi Gupta <nidhi1.gupta@intel.com> Signed-off-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by:
Petri Latvala <petri.latvala@intel.com>
-
Chris Wilson authored
The goal is to create just enough of a workload that will run long enough to delay others and be detectable. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
- Apr 07, 2020
-
-
José Roberto de Souza authored
As now kernel enables FBC on linear surfaces on GEN9+, it will allow FBC to be enabled on fbcon, so doing the changes he to tests this new case. Reviewed-by:
Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by:
José Roberto de Souza <jose.souza@intel.com>
-
José Roberto de Souza authored
Every time fbc_wait_until_enabled() is called from fbc_wait_until_update() it was waiting the whole 5 seconds of timeout to return false as expected. To save most 99% of this adding here fbc_wait_until_disabled(). v5: - Fixed fbc_wait_until_update() test Reviewed-by:
Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by:
José Roberto de Souza <jose.souza@intel.com>
-
Chris Wilson authored
The premise of the test is that one client does not block the other, to which we only need to verify that the ready client proceeds unhindered by the abusive client. So we only need assert that the ready client completes within a shorter time than the abusive client. It would be nice that we could assert that under all conditions it never takes more than a millisecond to submit a no-op; but that goal is a bit too far for today. Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/1654 Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Chris Wilson authored
Include the reason why we are dumping the task state (test timeout) in the kmsg log prior to the task state. Hopefully this helps when reading the dump. v2: Use asprintf to combine the strings into one to avoid error prone manual string handling and enjoy one single write() into the kmsg. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Petri Latvala <petri.latvala@intel.com> Reviewed-by:
Petri Latvala <petri.latvala@intel.com>
-
José Roberto de Souza authored
i915 is making fences not mandatory to enable FBC in newer platforms. As BSpec do not have restrictions against tiling formats to enable FBC it will be possible to enable FBC with linear tiling, so lets test it. v2: - changed from GEN11 to GEN9 following kernel patches Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Reviewed-by:
Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Signed-off-by:
José Roberto de Souza <jose.souza@intel.com>
-