1573 Commits

Author SHA1 Message Date
Damien Lespiau
5959b8bb41 assembler: Tune the error message for invalid send on gen6+
And be a bit more descriptive.

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2013-08-20 14:25:52 +01:00
Damien Lespiau
5b791671ad intel_infoframes: Be future-proof about showing 3D_Ext_Data
As Ville noted, future 3D_Struct must also send 3D_Ext_Data in the
vendor infoframe.

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2013-08-20 14:20:06 +01:00
Damien Lespiau
b5acc1061a build: Fix the overlay build summary at the end of configure
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2013-08-20 14:18:58 +01:00
Chris Wilson
2a37b1d78e lib: Make igt_assert() abort under gdb
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-20 12:45:55 +01:00
Chris Wilson
398be7d573 gem_evict_everything: Fix the error code checking after drmIoctl
drmIoctl doesn't return the errno, so look it up after an error.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-20 12:40:56 +01:00
Chris Wilson
c615b58289 tests: Add gem_evict_everything
Exercise the eviction logic. This is just a naive test to ensure that we
can evict old buffers to accommodate new batches, and in the process
trigger the evict everything logic.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-20 11:53:44 +01:00
Chris Wilson
c6482b7814 overlay: Sample power every second
Found the bug, but still only read the msr once every second - mainly as
an exercise in handling different sample rates.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-20 11:09:11 +01:00
Chris Wilson
c888507b68 overlay: use rc6_enable to drop useless information
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-20 11:08:13 +01:00
Chris Wilson
cf62d52eb4 overlay: Fix counting fail
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-20 10:58:02 +01:00
Chris Wilson
5c81cda0ff overlay: Add graph for GPU power consumption
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-20 10:26:23 +01:00
Chris Wilson
baa5be07d6 overlay: Add rc6 residency
Not much point at the moment since we use forcewake to continuously
probe the GPU busyness. But that will eventually change to a more
power-efficient in-kernel.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-20 10:03:47 +01:00
Daniel Vetter
912a7d8556 tests/gem_concurrent_blit: Fix segmentation fault
Apparently the simple changes introduced in

commit 78865847f9fae7e590960f9836f2ec8b611a190e
Author:     Daniel Vetter <daniel.vetter@ffwll.ch>
AuthorDate: Mon Aug 19 07:23:49 2013 +0200
Commit:     Daniel Vetter <daniel.vetter@ffwll.ch>
CommitDate: Mon Aug 19 08:09:25 2013 +0200

    lib/drmtest: skip fixtures after an igt_skip

pushed the stack space requirement for run_modes over some magic limit
(I guess where the strack grow logic starts to fail, but I didn't
check). Fix this by moving the data into .bss.

Also add some asserts to check that fixtures aren't abused while at
it (i.e. the useful parts of my debug printf/assert craze).

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=68299
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-20 06:42:10 +02:00
Chris Wilson
00282ed458 overlay: Wrap the colour index around the rgba array
And stop assigning colours beyond the end of the array. Still needs a
better method for colour assignment, big list of good colours & ida?

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-19 23:29:08 +01:00
Chris Wilson
f71d7aeb77 overlay: Add missing include "debugfs.h"
Later versions of gcc are apparently stricter.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-19 22:26:01 +01:00
Chris Wilson
55b8c33ca5 overlay: Auatomatically mount debugfs
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-19 18:16:11 +01:00
Mengdong Lin
34198b801e quick_dump/bdw: use hex() to convert devid to hex string in error message
This patch is to avoid the error on device auto-detection failure
"TypeError: Can't convert 'int' object to str implicitly".

Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
Signed-off-by: Mengdong Lin <mengdong.lin@intel.com>
2013-08-19 10:14:01 -07:00
Imre Deak
b70d4c9e68 tests: add kms_setmode
Iterate through all valid/invalid crtc/connector combinations. At the
moment only clone configurations are tested as the single output cases
are tested already by testdisplay. Also from combinations where all
connectors are on the same crtc (clone-single-crtc) only those are
tested that are invalid, as I haven't found any machine that supports
these (have to be GT2 with dvo and vga output).

For configurations with one crtc per connector the FBs are per-crtc atm.

Signed-off-by: Imre Deak <imre.deak@intel.com>
2013-08-19 16:56:14 +03:00
Imre Deak
5cabaae4dd lib: add subtest extra command line option handling
At the moment any command line option handling done by tests will
interfere with the option handling of the subtest interface. To fix this
add a new version of the subtest_init function accepting optional short
and long command line options. Merge these together with the subtest
interface's own long options and handle both together in the same
getopt_long call.

Signed-off-by: Imre Deak <imre.deak@intel.com>
2013-08-19 16:38:22 +03:00
Imre Deak
e55b89f1c3 lib: handle SIGSEGV similarly to other error signals
Signed-off-by: Imre Deak <imre.deak@intel.com>
2013-08-19 16:38:21 +03:00
Imre Deak
9cbbce148f lib: shorten DP/eDP connector names
Signed-off-by: Imre Deak <imre.deak@intel.com>
2013-08-19 16:38:21 +03:00
Imre Deak
9a9f13167a lib: export kmstest_get_connector_default_mode
Signed-off-by: Imre Deak <imre.deak@intel.com>
2013-08-19 16:38:21 +03:00
Daniel Vetter
8dbd1fb9d4 lib/drmtest: igt_skip when drm_get_card fails
Also add printf support to igt_skip to make sure there's always a
reason why we fail a testcase.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-19 11:09:25 +02:00
Daniel Vetter
9ad062d0b3 lib/drmtest: extract gem_create_context
libdrm requirements are now up to it.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-19 10:55:28 +02:00
Daniel Vetter
23eee39489 tests: roll out igt_require some more
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-19 10:47:53 +02:00
Daniel Vetter
5951ffb6a0 lib/drmtest: rip out drm_open_any_master
It's unused. Also most of our tests failed to ask for the right type
of drm fd anyway. So it's imo better to just let them fall over when
they don't get master but want it, like they already do today.

This also allows us to garbage-collect the master parameter to
drm_get_card and associated code.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-19 10:34:34 +02:00
Daniel Vetter
4ba1f2e104 lib/drmtest: Properly skip if no intel gfx supported
drm/* kernel test nirvana!

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-19 08:09:25 +02:00
Daniel Vetter
47a32a3aec lib/drmtest: make igt_fail work outside of subtests
With the abortable fixtures we can now correctly fail all subsequent
sutbests if we hit upon an igt_assert outside of a subtest.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-19 08:09:25 +02:00
Daniel Vetter
78865847f9 lib/drmtest: skip fixtures after an igt_skip
This way we can just enclose all igt_skip/igt_require calls into
fixtures even when we have subtests, and still output correct SKIP
message for all of them. Wohoo, magic!

The only thing which doesn't work yet is enumerating failed subtests,
but I think that should work out on top of this.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-19 08:09:25 +02:00
Chris Wilson
3df8300e23 overlay: Tweak label locations to include baseline offset.
Still approximately, too lazy to query the metrics.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-19 08:20:15 +01:00
Chris Wilson
34e4780c8e overlay: Add a X11 window backend
Useful for remote hosts.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-18 21:10:26 +01:00
Chris Wilson
1c1a279806 overlay: Tweak a couple of the fill colours to be slightly less horrid
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-18 19:21:02 +01:00
Chris Wilson
1391ae08eb overlay: Don't smooth gpu freq
This is supposed to be discrete jumps, so use straight lines to emphasis
this nature.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-18 19:21:02 +01:00
Daniel Vetter
90ef68859c test/gem_dummy_reloc_loop: fix igt_require conversion
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=68170
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-08-18 19:58:28 +02:00
Chris Wilson
5d41b13824 overlay: Remove the double ':' from object comm names
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-18 18:55:12 +01:00
Chris Wilson
6a38200b87 overlay: Use a more compact 2x2 layout for the graphs
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-18 18:51:22 +01:00
Chris Wilson
74032f4b45 overlay: Rearrange GUI state
Planning a new layout...

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-18 18:40:03 +01:00
Chris Wilson
7d950fa6f2 overlay: Print min/max GPU frequencies.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-18 18:27:47 +01:00
Chris Wilson
3f5129471f overlay: Convert gem objects to megabytes
Less confusing, I hope.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-18 18:24:43 +01:00
Chris Wilson
e1ed5606c6 overlay: Parse gem objects
Condense the information and begin graphing it. Remaining todo for
memory is to measure bind/evict flux, and perhaps clflush.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-18 18:17:05 +01:00
Chris Wilson
de2c97b27f overlay: Add GPU frequency
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-18 16:53:18 +01:00
Chris Wilson
6a64ee938b overlay: Include CPU usage in the overview chart
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-18 15:57:47 +01:00
Chris Wilson
98572f0446 overlay: Count flips per plane
Stop the misleading double-accounting of flips when we have multiple
displays active.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-18 11:22:52 +01:00
Chris Wilson
b79a28355d overlay: Improve the horizontal fit of the charts
Notably fix the fill boundary to not extend past the right hand side of
the chart.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-17 23:50:21 +01:00
Chris Wilson
f185f46114 overlay: Correct layout of ring/seqno in raw sample
For seqno completion, the events are too coarse i.e. one event may
signal the completion of a few seqno. We will need to sort the events to
properly compute the busy times.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-17 23:21:34 +01:00
Chris Wilson
67f533f836 overlay: Accumulate busy times
Still a little too course as we add multiple overlapping seqnos and
waits.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-17 22:33:35 +01:00
Chris Wilson
6233cac9c9 overlay: Couple wait begin/end events together to fix accounting
Since the events may be processed out of order (due to per-cpu
ringbuffers) we need to be careful to associated wait pairs in order to
compute the correct elapsed time.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-17 22:22:21 +01:00
Chris Wilson
e1d8d774f3 overlay: Perf output redirection must be done after mmap()
Effectively you choose to redirect the output of an event instead of
mmapping it directly - but the target must already be mmapped.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-17 22:07:49 +01:00
Chris Wilson
eed59eac47 overlay: Show per-process wait times
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-17 21:14:10 +01:00
Chris Wilson
cc9de398cf overlay: Graph per-process requests over time
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-17 20:32:58 +01:00
Chris Wilson
cbbd55af15 overlay: Track requests per-process
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-17 20:04:11 +01:00