summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2017-11-21igt: Add VC4 purgeable BO testspurgeableBoris Brezillon3-0/+268
v2: Add <signal.h> include after rebase (by anholt) Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Eric Anholt <eric@anholt.net>
2017-11-21igt: Add igt_vc4_get_param() helperBoris Brezillon2-0/+16
v2: Rebase on get/set_tiling helpers (by anholt). Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Eric Anholt <eric@anholt.net>
2017-11-21igt/vc4: Add a helper function to mark BOs purgeableBoris Brezillon2-0/+13
v2: Rebase on get/set_tiling helpers (by anholt). Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Eric Anholt <eric@anholt.net>
2017-11-21igt/vc4-label: Test setting labels of BOs.Eric Anholt3-0/+97
So far this test is basically making sure that we throw appropriate errors, and don't oops the kernel with silly inputs. v2: Add to meson build. Signed-off-by: Eric Anholt <eric@anholt.net> Acked-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2017-11-21igt/vc4_tiling: Test vc4's new set/get_tiling ioctls.Eric Anholt5-0/+163
This just checks that the appropriate errors get thrown, and that the modifier can be set/get successfully, and that the modifier doesn't leak to other BO allocations. Testing of scanout will be done with the writeback support that Boris is building. The modifier has no effect on V3D rendering, so no need to test that. v2: Add to the meson build. Signed-off-by: Eric Anholt <eric@anholt.net>
2017-11-21lib: Use drm-uapi/i915_drm.h instead of local defines.Eric Anholt7-130/+90
The MMAP_V2 is replaced by just using MMAP, since the official header has the updated struct. The gem_create_v2 and gem_get_aperture are left as is, because they seem to not be reflected in the UABI header! Signed-off-by: Eric Anholt <eric@anholt.net> Acked-by: Petri Latvala <petri.latvala@intel.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2017-11-21lib: Use the imported uapi's addfb2 defines.Eric Anholt1-2/+2
Signed-off-by: Eric Anholt <eric@anholt.net> Acked-by: Petri Latvala <petri.latvala@intel.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2017-11-21tests: Remove libdrm_vc4 dependency.Eric Anholt6-36/+13
The autotools build retains the configure.ac option, while meson folds vc4 into the default build since we don't have any meson_options.txt to control parts of the build. Signed-off-by: Eric Anholt <eric@anholt.net> Acked-by: Petri Latvala <petri.latvala@intel.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2017-11-21tests: Convert to using the imported drm-uapi headers.Eric Anholt3-4/+8
Tested by dropping garbage in my libdrm's headers and rebuilding. v2: Pull in DRM_CFLAGS movement that ended up later in the sequence. Signed-off-by: Eric Anholt <eric@anholt.net> Acked-by: Petri Latvala <petri.latvala@intel.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2017-11-21headers: Import drm-next uapi headers.Eric Anholt26-0/+10919
These will be used for tests that want to use a local copy of the headers instead of depending on libdrm releases. Taken from drm-next d65d31388a23 ("Merge tag 'drm-misc-next-fixes-2017-11-07' of git://anongit.freedesktop.org/drm/drm-misc into drm-next") See README for rules on updating these headers. Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Acked-by: Petri Latvala <petri.latvala@intel.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2017-11-21tools/intel_watermark: Try not to dump nonexistent planes on SKL+Dhinakaran Pandiyan1-7/+33
Having registers for nonexistent planes in the dumpo might end up being rather confusing. Try to only include real planes. Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-21tools/intel_watermark: Dump WM_LINETIME on SKL+Ville Syrjälä1-0/+15
Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-21tools/intel_watermark: Polish SKL+ register dump output a bitVille Syrjälä1-3/+3
Print hex numbers with "0x" prefix, and make the output a bit more compact. Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-21tools/intel_watermark: Eliminate pointless %s in printf()Ville Syrjälä1-6/+6
Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-21tools/intel_watermark: Update intel_watermark with SKL supportDhinakaran Pandiyan1-1/+147
Added support to print SKL watermark and DDB registers. v2: Printed raw register data, renamed planes and combined two printf()'s (Ville) v3: s/drm_fd/-1/ for intel_register_access_init() Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> [vsyrjala: make it build, fix indentation, etc.] Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-21tools/intel_watermark: Print linetime wms in usecVille Syrjälä1-2/+4
Let's print the linetime watermarks un usecs. Might make it easier to spot bogus values. Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-21tests: Rename chamelium to kms_chamelium.Maarten Lankhorst4-13/+13
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Lyude Paul <lyude@redhat.com> Acked-by: Martin Peres <martin.peres@linux.intel.com>
2017-11-21tests/chamelium: Only initialize igt_display onceMaarten Lankhorst1-33/+12
Instead of first calling kmstest_unset_all_crtcs, and calling igt_display_init for each test, use igt_display_reset to reset igt_display between tests, and use atomic commit to disable all unused crtcs in enable_output(). Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Lyude Paul <lyude@redhat.com>
2017-11-21lib/igt_kms: Make igt_output_from_connector probe all outputsMaarten Lankhorst1-2/+6
igt_output_from_connector should be used for disconnected outputs too, this is useful for chamelium testing, where disconnected outputs may reappear. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Lyude Paul <lyude@redhat.com>
2017-11-21lib/igt_kms: Add igt_display_reset function, v3.Maarten Lankhorst2-59/+106
A lot of code duplicates this, but it should be handled in the core. Add it and use it after igt_display_init(), the tests have to be converted one by one. Changes since v1: - Merely reset rotation to HW value. Changes since v2: - Compile. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Lyude Paul <lyude@redhat.com>
2017-11-21overlay: Fix compiler warning when compiling with recent gcc.Maarten Lankhorst1-1/+1
[1/316] Compiling C object 'overlay/intel-gpu-overlay@exe/overlay.c.o'. ../overlay/overlay.c: In function ‘show_gem_objects’: ../overlay/overlay.c:798:31: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 160 [-Wformat-truncation=] snprintf(buf, sizeof(buf), "%s %ldMB, %ld objects", ^~ ../overlay/overlay.c:798:30: note: using the range [-9223372036854775808, 9223372036854775807] for directive argument snprintf(buf, sizeof(buf), "%s %ldMB, %ld objects", ^~~~~~~~~~~~~~~~~~~~~~~ ../overlay/overlay.c:798:30: note: using the range [-9223372036854775808, 9223372036854775807] for directive argument ../overlay/overlay.c:798:3: note: ‘snprintf’ output between 16 and 309 bytes into a destination of size 160 snprintf(buf, sizeof(buf), "%s %ldMB, %ld objects", ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ comm->name, comm->bytes >> 20, comm->count); Might as well give it the 309 bytes it wants, plus on more. :-) Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-11-21tools: Stop opening the driver just to find the debugfsChris Wilson9-69/+33
Since the tools want to work without the module loaded, remove the assumption that we want to load the driver to find debugfs. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Ville Syrjala <ville.syrjala@linux.intel.com>
2017-11-17tools/error_decode: Print ASCII user buffersChris Wilson1-0/+13
Look at the first 16 characters of the user buffer and if they are all printable, assume that user buffer contains ASCII data (e.g. a debug log) that we want to simply print out. Otherwise, we treat it as a binary data and hexdump as before. Tvrtko: you know you could just write this as a printf (d'oh) Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
2017-11-17lib/i915: Prepare for the loss of i915.enable_execlists parameterChris Wilson1-8/+9
If we can't find the enable_execlists parameter, presume that the switch is forced by the kernel and enabled for all hw supporting execlists. We don't have a GETPARAM or ENGINE_INFO to query the internal details. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
2017-11-16lib: Dump /sys/kernel/debug/suspend_stats after suspend failureChris Wilson1-4/+18
I noticed that dpm was storing some information about which phase of suspend failed inside suspend_stats. That will be useful to help debug such failures, so automatically dump it after suspend fails. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2017-11-16lib/kmod: Stop reloading i915 after every kselftestChris Wilson1-3/+0
Since CI runs each subtest individually, we do not get the batching of tests and execute every fixture around each subtest. The consequence of this for CI is that we quickly exhaust static allocations like lockdep's array of lockclasses, or causing hash conflicts with new locks being reallocation into existing addresses, the result is a warning from lockdep and ts disabling. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2017-11-16lib: Attempt to load the module for a missing deviceChris Wilson1-40/+57
If we asked to open a particular chipset and we find no matching device, try again after attempting to load its module. Previously we only did this for vgem, which is not automatically probed during boot, but if we want to leave the module unloaded we have to try harder when we need the device. v2: DRIVER_* are already masks (and not shifts). Use a common driver_open for both /dev/dri/cardX and /dev/dri/renderDX. v3: Beware making local variables accidentally static scoped. v4: Beware multiple threads trying and failing to open a device v5: Fixed spelling of render (Petri) 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>
2017-11-16lib/debugfs: Make is_mountpoint() non-fatalChris Wilson1-13/+20
is_mountpoint() asserts rather than report the error. Normally this isn't a problem, except for atypical selftests. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-15Revert "tests/kms_flip: Make flip-vs-panning-vs-hang change DSPSURF"Maarten Lankhorst1-4/+0
This reverts commit 7296e09ee7f17e6d564e52cf64ee900670849429. This commit was accidentally applied twice, the first time in commit e4ba3b75e6de35483b2edea21ceda145ef0b3311. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> CC: Daniel Vetter <daniel.vetter@ffwll.ch> #irc
2017-11-12lib/i915: Query semaphore status using GETPARAMChris Wilson1-1/+16
Wherever possible we want to use existing ioctls rather than poking the volatile modparams, in this case we already provide I915_PARAM_HAS_SEMAPHORES so we have no excuse to peek i915.semaphores. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
2017-11-09lib: Always enable ftrace-dump-on-oopsChris Wilson1-0/+23
Some debugging information is too voluminous to enable by default, yet may be invaluable when it comes to post-mortem debugging. trace_printk() provides the facility for the trace ringbuffer to be dumped on oops, this way we can cheaply spam the debug log and only present it in case of emergency. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2017-11-09kms_atomic_transition: Split out modeset tests on internal panelsImre Deak1-4/+67
Doing modeset on internal panels may have a considerable overhead due to the panel specific power sequencing delays. To avoid long test runtimes in CI split out the testing of internal panels from the plane modeset subtests and test only a reduced number of plane combinations on these: where only a single plane is enabled, all planes are disabled or all planes are enabled. v2: - Add code comment explaining the need for the separate internal-panels subtests. - Calculate the number of enabled planes only once. (Chris) - Disable the slow internal-panels subtests testing all combinations. (Petri) v3: (Maarten) - Skip the internal-panels subtests if no internal panels are found. - Also test transitions with all planes disabled. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103334 Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Imre Deak <imre.deak@intel.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
2017-11-06tests/kms_fbcon_fbt: Report fbc_status on errorGabriel Krisman Bertazi1-2/+22
knowing the assertion triggered on wait_until_enabled() is not that useful without knowing what exactly caused the failure. It might be an user error, like too little stolen memory by the bios, or an actual issue in the kernel. So, let's make life easier, particularly for the CI, by printing the status before failing out. Case in point: Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101718 v2: Small typo. Signed-off-by: Gabriel Krisman Bertazi <krisman@collabora.co.uk> Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
2017-11-06tests/kms_plane_scaling: Fix off-by-one plane selectionGabriel Krisman Bertazi1-3/+3
Commit ca20170afc6f ("tests/kms_plane_scaling: Add support for dynamic number of planes") shifted the tested planes by one after the refactoring, accidentally ignoring the first plane, which is zero indexed. A symptom of the issue appears on KBL, where the third plane is already the shared cursor, causing igt to configure an unsupported framebuffer format on it, triggering the following error: [drm:__setplane_internal] Invalid pixel format XR24 little-endian (0x34325258) With this fixed, we can exposes the pixel clock scaling issue, which is the actual problem being tracked in Bug 103159, but let's start by reverting to the old behavior. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103159 Fixes: ca20170afc6f ("tests/kms_plane_scaling: Add support for dynamic number of planes") Signed-off-by: Gabriel Krisman Bertazi <krisman@collabora.co.uk> Reviewed-by: Robert Foss <robert.foss@collabora.com>
2017-11-06tests/gem_eio: Nerf in-flight-suspendPetri Latvala1-1/+1
Use TEST_NONE instead of TEST_DEVICES to prevent a machine death that happens on a particular model of SNB (2600 is affected, 2520m is not). Reset is unreliable, but the exact setup to trigger the death and how to work around it are not found at this time. There is some kind of a race lurking, and this commit is a workaround that avoids it, leaving the test still exercising some of the codepaths. References: https://intel-gfx-ci.01.org/tree/drm-tip/igt@gem_eio@in-flight-suspend.html References: https://bugs.freedesktop.org/show_bug.cgi?id=103289 Suggested-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Petri Latvala <petri.latvala@intel.com> CC: Daniel Vetter <daniel.vetter@ffwll.ch> CC: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> CC: "Lofstedt, Marta" <marta.lofstedt@intel.com> CC: Martin Peres <martin.peres@linux.intel.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2017-11-06lib/drmtest: Fix typoThierry Reding1-1/+1
"other" was misspelled as "otehr". Fix it. Signed-off-by: Thierry Reding <treding@nvidia.com>
2017-11-06lib: Fix compilation on non-x86Thierry Reding3-5/+4
The meson build avoids the failure by excluding the igt_x86.c file from the compilation. autotools being what they are don't support that in an easy way, so just use the preprocessor to avoid the duplicate function definitions. Since igt_x86.c will now be ignored for non-x86 builds, the meson work- around can be removed. Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
2017-11-06tools/aubdump: Avoid ISO C90 warningThierry Reding1-1/+2
GCC will warn about ISO C90 forbidding to mix declarations and code. Declare the variable at the beginning of the function to suppress the warning. Signed-off-by: Thierry Reding <treding@nvidia.com>
2017-11-06tests/perf: Fix a bunch of warnings on 32-bit systemsThierry Reding1-16/+16
Data types are defined differently on 32-bit systems, causing gcc to complain about printf format specifiers not matching the size of the variables passed in. Use PRIu64 and %zu where appropriate. Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
2017-11-06run-tests.sh: Use piglit names when listing available testsPetri Latvala1-16/+6
List the available tests with piglit instead of by hand. This solves naming inconsistencies (piglit throwing caps away) as seen by cibuglog, and makes the listing code simpler. The format of the listing changes from test-binary/subtest-name to igt@test-binary@subtest-name but so far nothing has been able to directly consume run-tests.sh -l output. The piglit format is directly consumable by piglit --test-list, and thus by run-tests.sh -T. Signed-off-by: Petri Latvala <petri.latvala@intel.com> Cc: Tomi Sarvela <tomi.p.sarvela@intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Acked-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Acked-by: Tomi Sarvela <tomi.p.sarvela@intel.com> Acked-by: Martin Peres <martin.peres@linux.intel.com>
2017-11-06igt/gem_exec_fence: Add subtest for invalid flagsTvrtko Ursulin1-0/+31
We need to check that the kernel rejects attempts to pass in unknown flags. 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>
2017-11-03tests/debugfs_test: Pretty print subdirectoriesMaarten Lankhorst1-7/+18
Instead of: (debugfs_test:1499) DEBUG: Reading file "data" (debugfs_test:1499) DEBUG: Could not open file "data" with error: Input/output error Print: (debugfs_test:1360) DEBUG: Entering subdir crtc-2 (debugfs_test:1360) DEBUG: Entering subdir crc (debugfs_test:1360) DEBUG: Reading file "data" (debugfs_test:1360) DEBUG: Could not open file "data" with error: Input/output error (debugfs_test:1360) DEBUG: Reading file "control" Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2017-11-02lib/igt_debugfs: Remove support for legacy CRC api.Maarten Lankhorst1-204/+23
In kernel v4.10 the legacy crc api has been replaced by a generic drm crc API. Remove support of the i915 legacy CRC api, since this is no longer needed. Cc: Tomi Sarvela <tomi.p.sarvela@intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Cc: Jani Nikula <jani.nikula@intel.com> Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Acked-by: Petri Latvala <petri.latvala@intel.com> [mlankhorst: Put the igt_require_pipes_crc() changes in their own commit.] Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> #irc
2017-11-02lib/igt_debugfs: Use fstat instead of open for testing CRC support.Maarten Lankhorst1-3/+9
commit 8038e09be5a3ac06 ("drm/crc: Only open CRC on atomic drivers when the CRTC is active.") rejects opens on the CRC when the CRTC is not configured. Use fstat instead to check this file exists, so we don't accidentally rely on the legacy CRC path. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> #irc
2017-10-30assembler: Fix bashism in run-test.shRhys Kidd1-1/+1
[[ a != b ]] is a bashism. As it's just comparing $1 to an empty string, use -n with a normal [ ]. Noticed whilst testing meson builds. /bin/sh is apparently dash in Intel's CI. v2: - keep this as a /bin/sh script (Joonas Lahtinen) Fixes: c3863e19 ("assembler/test: Prep work for meson") CC: Daniel Vetter <daniel.vetter@ffwll.ch> CC: Petri Latvala <petri.latvala@intel.com> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Signed-off-by: Rhys Kidd <rhyskidd@gmail.com>
2017-10-26igt/gem_exec_latency: Wire up an interloper for preemptionChris Wilson1-29/+59
For measuring the cost of preemption, inject a low priority spinner between the two measurements; the difference between the preemption and the normal dispatch includes both the cost of the spinner dispatch and of preempting it. Close enough for us to estimate the cost of preemption, though we don't measure the cost of preemption on the local ring! Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> CC: Michał Winiarski <michal.winiarski@intel.com>
2017-10-25igt/drv_hangman: Skip aliased I915_EXEC_BSDChris Wilson1-0/+15
If the system has bsd2, we do not know which ring the kernel will alias I915_EXEC_BSD onto and so we do not what the matching string should be. Skip the unknown. v2: Deny the aliased I915_EXEC_BSD exists at all; be specific! Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103324 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> CC: Michał Winiarski <michal.winiarski@intel.com>
2017-10-25igt/gem_exec_nop: Headless requires DRM_MASTER for modesettingChris Wilson1-1/+4
Since the headless subtest wants to compare execution latency of a headless mode vs a single head, it needs to be able to do a modeset and ergo it requires DRM_MASTER. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
2017-10-25igt/gem_fd_exhaustion: Remove stale assertChris Wilson1-17/+4
__gem_create() doesn't touch the outparam *handle on failure, so we can no longer assert that it zero. This is reasonable to remove as it is just testing the library itself and not the kernel, so no loss in coverage. We already had to remove the false assertion that gem_create() must fail following fd exhaustion (as we can not prevent the kernel from freeing VFS fdspace in between calls). The last remaining change is that we do no need to rely on an external path for open() as dup() will do the job of exhausting the fdtable. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103365 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
2017-10-25lib/gt: Always eat the unwanted error stateChris Wilson1-15/+16
We only suppress the error state from the context, iff we trigger the GPU reset by hangcheck (igt_hang_ring). If we trigger an immediate reset via igt_force_gpu_reset(), we will populate the error-state but not free it because we thought we have it suppressed by the context parameter. Always eat the error after we expect a GPU reset and have not specified that we want to keep it. The side-effect of keeping the error-state around after we deliberately created it is that subsequent GPU hangs are not prominently recorded, as the kernel believes they are secondary hangs (and we only announce the first). Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>