All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t] lib: Show the kernel stack when reporting a GPU hang
@ 2018-05-03 20:55 Chris Wilson
  2018-05-03 21:42 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Chris Wilson @ 2018-05-03 20:55 UTC (permalink / raw)
  To: igt-dev

In a few tests (like gem_exec_await, gem_exec_schedule) we use the GPU
hang to break a deadlock hit during test setup. In these case we would
like to see where in kernel the process is stuck (if at all).

References: https://bugs.freedesktop.org/show_bug.cgi?id=105900
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
 lib/igt_aux.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/lib/igt_aux.c b/lib/igt_aux.c
index 64b952961..c192c09cb 100644
--- a/lib/igt_aux.c
+++ b/lib/igt_aux.c
@@ -427,6 +427,24 @@ void igt_stop_shrink_helper(void)
 	igt_stop_helper(&shrink_helper);
 }
 
+static void show_kernel_stack(pid_t pid)
+{
+	char buf[80], *str;
+	int dir;
+
+	snprintf(buf, sizeof(buf), "/proc/%d", pid);
+	dir = open(buf, O_RDONLY);
+	if (dir < 0)
+		return;
+
+	str = igt_sysfs_get(dir, "stack");
+	if (str) {
+		igt_debug("Kernel stack for pid %d:\n%s\n", pid, str);
+		free(str);
+	}
+
+	close(dir);
+}
 
 static struct igt_helper_process hang_detector;
 static void __attribute__((noreturn))
@@ -466,6 +484,7 @@ hang_detector_process(int fd, pid_t pid, dev_t rdev)
 			str = udev_device_get_property_value(dev, "ERROR");
 			if (str && atoi(str) == 1) {
 				igt_debugfs_dump(fd, "i915_error_state");
+				show_kernel_stack(pid);
 				kill(pid, SIGIO);
 			}
 		}
-- 
2.17.0

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [igt-dev] ✓ Fi.CI.BAT: success for lib: Show the kernel stack when reporting a GPU hang
  2018-05-03 20:55 [igt-dev] [PATCH i-g-t] lib: Show the kernel stack when reporting a GPU hang Chris Wilson
@ 2018-05-03 21:42 ` Patchwork
  2018-05-04  1:36 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
  2018-05-04 18:19 ` [igt-dev] [PATCH i-g-t] " Antonio Argenziano
  2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2018-05-03 21:42 UTC (permalink / raw)
  To: Chris Wilson; +Cc: igt-dev

== Series Details ==

Series: lib: Show the kernel stack when reporting a GPU hang
URL   : https://patchwork.freedesktop.org/series/42661/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4135 -> IGTPW_1319 =

== Summary - SUCCESS ==

  No regressions found.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/42661/revisions/1/mbox/

== Known issues ==

  Here are the changes found in IGTPW_1319 that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    igt@kms_frontbuffer_tracking@basic:
      fi-hsw-4200u:       PASS -> DMESG-FAIL (fdo#102614)

    igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
      fi-ivb-3520m:       PASS -> DMESG-WARN (fdo#106084)

    
    ==== Possible fixes ====

    igt@drv_module_reload@basic-reload:
      fi-bsw-n3050:       DMESG-FAIL (fdo#106373) -> PASS

    igt@gem_exec_suspend@basic-s3:
      fi-skl-guc:         FAIL (fdo#105900, fdo#104699) -> PASS

    igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
      fi-cnl-psr:         DMESG-WARN (fdo#104951) -> PASS

    
  fdo#102614 https://bugs.freedesktop.org/show_bug.cgi?id=102614
  fdo#104699 https://bugs.freedesktop.org/show_bug.cgi?id=104699
  fdo#104951 https://bugs.freedesktop.org/show_bug.cgi?id=104951
  fdo#105900 https://bugs.freedesktop.org/show_bug.cgi?id=105900
  fdo#106084 https://bugs.freedesktop.org/show_bug.cgi?id=106084
  fdo#106373 https://bugs.freedesktop.org/show_bug.cgi?id=106373


== Participating hosts (39 -> 37) ==

  Missing    (2): fi-ilk-m540 fi-skl-6700hq 


== Build changes ==

    * IGT: IGT_4460 -> IGTPW_1319

  CI_DRM_4135: 266fa55ff4e1d3b7ab86deccf5709ee79c79f5dc @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_1319: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1319/
  IGT_4460: f772d9a910130b3aec8efa4f09ed723618fae656 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  piglit_4460: f74d92e704849610364b4474a2c67ea2008c14e0 @ git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1319/issues.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [igt-dev] ✓ Fi.CI.IGT: success for lib: Show the kernel stack when reporting a GPU hang
  2018-05-03 20:55 [igt-dev] [PATCH i-g-t] lib: Show the kernel stack when reporting a GPU hang Chris Wilson
  2018-05-03 21:42 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
@ 2018-05-04  1:36 ` Patchwork
  2018-05-04 18:19 ` [igt-dev] [PATCH i-g-t] " Antonio Argenziano
  2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2018-05-04  1:36 UTC (permalink / raw)
  To: Chris Wilson; +Cc: igt-dev

== Series Details ==

Series: lib: Show the kernel stack when reporting a GPU hang
URL   : https://patchwork.freedesktop.org/series/42661/
State : success

== Summary ==

= CI Bug Log - changes from IGT_4460_full -> IGTPW_1319_full =

== Summary - WARNING ==

  Minor unknown changes coming with IGTPW_1319_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_1319_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/42661/revisions/1/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in IGTPW_1319_full:

  === IGT changes ===

    ==== Warnings ====

    igt@gem_tiled_blits@interruptible:
      shard-glk:          PASS -> SKIP
      shard-apl:          PASS -> SKIP

    igt@pm_rpm@modeset-non-lpsp-stress:
      shard-kbl:          SKIP -> PASS

    
== Known issues ==

  Here are the changes found in IGTPW_1319_full that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    igt@kms_chv_cursor_fail@pipe-c-256x256-top-edge:
      shard-apl:          PASS -> FAIL (fdo#104671)

    igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible:
      shard-glk:          PASS -> FAIL (fdo#100368)

    igt@kms_flip@modeset-vs-vblank-race:
      shard-hsw:          PASS -> FAIL (fdo#103060)

    igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c:
      shard-kbl:          PASS -> INCOMPLETE (fdo#103665)

    igt@kms_rotation_crc@sprite-rotation-180:
      shard-snb:          PASS -> FAIL (fdo#103925)

    igt@kms_rotation_crc@sprite-rotation-270:
      shard-kbl:          PASS -> DMESG-WARN (fdo#105602, fdo#103558) +4

    
    ==== Possible fixes ====

    igt@drv_selftest@live_contexts:
      shard-kbl:          INCOMPLETE (fdo#103665) -> PASS

    igt@gem_exec_store@cachelines-bsd:
      shard-hsw:          FAIL (fdo#100007) -> PASS

    igt@gem_ppgtt@blt-vs-render-ctxn:
      shard-kbl:          INCOMPLETE (fdo#106023, fdo#103665) -> PASS

    igt@kms_flip@absolute-wf_vblank:
      shard-kbl:          DMESG-WARN (fdo#105602, fdo#103558) -> PASS +10

    igt@kms_flip@flip-vs-panning-vs-hang-interruptible:
      shard-snb:          DMESG-WARN (fdo#103821) -> PASS

    igt@kms_flip@plain-flip-ts-check-interruptible:
      shard-glk:          FAIL (fdo#100368) -> PASS
      shard-hsw:          FAIL (fdo#100368) -> PASS

    igt@kms_rotation_crc@primary-rotation-90:
      shard-apl:          FAIL (fdo#103925) -> PASS

    igt@kms_setmode@basic:
      shard-kbl:          FAIL (fdo#99912) -> PASS

    
  fdo#100007 https://bugs.freedesktop.org/show_bug.cgi?id=100007
  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
  fdo#103558 https://bugs.freedesktop.org/show_bug.cgi?id=103558
  fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
  fdo#103821 https://bugs.freedesktop.org/show_bug.cgi?id=103821
  fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
  fdo#104671 https://bugs.freedesktop.org/show_bug.cgi?id=104671
  fdo#105602 https://bugs.freedesktop.org/show_bug.cgi?id=105602
  fdo#106023 https://bugs.freedesktop.org/show_bug.cgi?id=106023
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912


== Participating hosts (6 -> 5) ==

  Missing    (1): pig-glk-j4005 


== Build changes ==

    * IGT: IGT_4460 -> IGTPW_1319
    * Linux: CI_DRM_4132 -> CI_DRM_4135

  CI_DRM_4132: 7b8793ceeefff56984d21be8906bbf3ba3b2ab25 @ git://anongit.freedesktop.org/gfx-ci/linux
  CI_DRM_4135: 266fa55ff4e1d3b7ab86deccf5709ee79c79f5dc @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_1319: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1319/
  IGT_4460: f772d9a910130b3aec8efa4f09ed723618fae656 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  piglit_4460: f74d92e704849610364b4474a2c67ea2008c14e0 @ git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1319/shards.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [igt-dev] [PATCH i-g-t] lib: Show the kernel stack when reporting a GPU hang
  2018-05-03 20:55 [igt-dev] [PATCH i-g-t] lib: Show the kernel stack when reporting a GPU hang Chris Wilson
  2018-05-03 21:42 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
  2018-05-04  1:36 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
@ 2018-05-04 18:19 ` Antonio Argenziano
  2018-05-04 20:19   ` Chris Wilson
  2 siblings, 1 reply; 5+ messages in thread
From: Antonio Argenziano @ 2018-05-04 18:19 UTC (permalink / raw)
  To: Chris Wilson, igt-dev



On 03/05/18 13:55, Chris Wilson wrote:
> In a few tests (like gem_exec_await, gem_exec_schedule) we use the GPU
> hang to break a deadlock hit during test setup. In these case we would
> like to see where in kernel the process is stuck (if at all).
> 
> References: https://bugs.freedesktop.org/show_bug.cgi?id=105900
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>

LGTM. Maybe with so much text adding a separator that is easy to find 
wouldn't be too bad.

Acked-by: Antonio Argenziano <antonio.argenziano@intel.com>

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [igt-dev] [PATCH i-g-t] lib: Show the kernel stack when reporting a GPU hang
  2018-05-04 18:19 ` [igt-dev] [PATCH i-g-t] " Antonio Argenziano
@ 2018-05-04 20:19   ` Chris Wilson
  0 siblings, 0 replies; 5+ messages in thread
From: Chris Wilson @ 2018-05-04 20:19 UTC (permalink / raw)
  To: Antonio Argenziano, igt-dev

Quoting Antonio Argenziano (2018-05-04 19:19:40)
> 
> 
> On 03/05/18 13:55, Chris Wilson wrote:
> > In a few tests (like gem_exec_await, gem_exec_schedule) we use the GPU
> > hang to break a deadlock hit during test setup. In these case we would
> > like to see where in kernel the process is stuck (if at all).
> > 
> > References: https://bugs.freedesktop.org/show_bug.cgi?id=105900
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> 
> LGTM. Maybe with so much text adding a separator that is easy to find 
> wouldn't be too bad.

It *should* be followed by the assert + stacktrace from the parent. One
hopes, not too bad for debugging. I'll let you know after looking at a
few reports...
-Chris
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-05-04 20:19 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-03 20:55 [igt-dev] [PATCH i-g-t] lib: Show the kernel stack when reporting a GPU hang Chris Wilson
2018-05-03 21:42 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
2018-05-04  1:36 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2018-05-04 18:19 ` [igt-dev] [PATCH i-g-t] " Antonio Argenziano
2018-05-04 20:19   ` Chris Wilson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.