[Intel-gfx] [01/15] drm/i915: Copy user requested buffers into the error state

Tahvanainen, Jari jari.tahvanainen at intel.com
Tue Mar 21 11:30:36 UTC 2017


Note that this is for all the patches in series, replied only on [1/15].

See also https://bugs.freedesktop.org/show_bug.cgi?id=94001#c45


From: Chris Wilson [mailto:chris at chris-wilson.co.uk]
Sent: Thursday, March 16, 2017 3:20 PM
To: intel-gfx at lists.freedesktop.org
Cc: Ben Widawsky <ben at bwidawsk.net>
Subject: [01/15] drm/i915: Copy user requested buffers into the error state

Introduce a new execobject.flag (EXEC_OBJECT_CAPTURE) that userspace may
use to indicate that it wants the contents of this buffer preserved in
the error state (/sys/class/drm/cardN/error) following a GPU hang
involving this batch.

Use this at your discretion, the contents of the error state. although
compressed, are allocated with GFP_ATOMIC (i.e. limited) and kept for all
eternity (until the error state is destroyed).

Based on an earlier patch by Ben Widawsky <ben at bwidawsk.net<mailto:ben at bwidawsk.net>>
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk<mailto:chris at chris-wilson.co.uk>>
Cc: Ben Widawsky <ben at bwidawsk.net<mailto:ben at bwidawsk.net>>
Cc: Matt Turner <mattst88 at gmail.com<mailto:mattst88 at gmail.com>>
Acked-by: Ben Widawsky <ben at bwidawsk.net<mailto:ben at bwidawsk.net>>
Reviewed-by: Joonas Lahtinen <joonas.lahtinen at linux.intel.com<mailto:joonas.lahtinen at linux.intel.com>>


Tested-by: Jari Tahvanainen <jari.tahvanainen at intel.com>



for https://patchwork.freedesktop.org/series/21377 on my dev-SKL (i5-6600k) by taking all the gem_exec_reloc cases to testlist (151 tests).

Executing those as a full set through piglit was not successful due to out-of-memory conditions at the end of the testlist with some (varying) gtt-xx subcases causing "Command terminated by signal 9". cpu-xx did not signal any problems.



drm-tip: 2017y-03m-17d-08h-03m-19s without patch series produced:

[151/151] skip: 2, pass: 120, fail: 29



with patch series applied one gets:

[121/151] pass: 121 |

running: igt/gem_exec_reloc/gtt-28 - "Command terminated by signal 9"

Taking rest as new testlist

[30/30] skip: 2, pass: 30, dmesg-warn: 1

having

dmesg-warn: igt/gem_exec_reloc/readonly-32

skip: igt/gem_exec_reloc/active-bsd1

skip: igt/gem_exec_reloc/active-bsd2



When running tests gtt-xx tests individually then result for all is pass.

$ sudo ./gem_exec_reloc --run-subtest cpu-31

IGT-Version: 1.17-g3e3c1cd (x86_64) (Linux: 4.11.0-rc2-ezbench_cb106cd+ x86_64)

Subtest cpu-31: SUCCESS (3,760s)

$ sudo ./gem_exec_reloc --run-subtest gtt-31

IGT-Version: 1.17-g3e3c1cd (x86_64) (Linux: 4.11.0-rc2-ezbench_cb106cd+ x86_64)

Subtest gtt-31: SUCCESS (25,313s)

$ sudo ./gem_exec_reloc --run-subtest gtt-30

IGT-Version: 1.17-g3e3c1cd (x86_64) (Linux: 4.11.0-rc2-ezbench_cb106cd+ x86_64)

Subtest gtt-30: SUCCESS (11,196s)

$ sudo ./gem_exec_reloc --run-subtest gtt-29

IGT-Version: 1.17-g3e3c1cd (x86_64) (Linux: 4.11.0-rc2-ezbench_cb106cd+ x86_64)

Subtest gtt-29: SUCCESS (5,198s)

$ sudo ./gem_exec_reloc --run-subtest gtt-28

IGT-Version: 1.17-g3e3c1cd (x86_64) (Linux: 4.11.0-rc2-ezbench_cb106cd+ x86_64)

Subtest gtt-28: SUCCESS (2,543s)

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-gfx/attachments/20170321/cb606963/attachment.html>


More information about the Intel-gfx mailing list