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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxxxxxxxxxxx]
Sent: Thursday, March 16, 2017 3:20 PM
To: intel-gfx@xxxxxxxxxxxxxxxxxxxxx
Cc: Ben Widawsky <ben@xxxxxxxxxxxx>
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@xxxxxxxxxxxx>
Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
Cc: Ben Widawsky <ben@xxxxxxxxxxxx>
Cc: Matt Turner <mattst88@xxxxxxxxx>
Acked-by: Ben Widawsky <ben@xxxxxxxxxxxx>
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx>

Tested-by: Jari Tahvanainen <jari.tahvanainen@xxxxxxxxx>
 
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)

 

_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux