On Tue, Sep 12, 2017 at 09:10:25PM +0100, Chris Wilson wrote:
> Dump debugfs/i915_error_state to the debug channel if we detect an ERROR
> uevent. This poses a few problems, not least that it is the auxiliary
> process doing the dumping (so the output may be interleaved with the
> test, but considering a hang occurred it is likely the test is blocked)
> and the average error state is around 60k, which may prove unwieldy!
> 
> On the other hand, it may prove invaluable in debugging those impossible
> to reproduce bugs.
> 
> Signed-off-by: Chris Wilson <[email protected]>


Reviewed-by: Petri Latvala <[email protected]>

> ---
>  lib/igt_aux.c | 8 +++++---
>  1 file changed, 5 insertions(+), 3 deletions(-)
> 
> diff --git a/lib/igt_aux.c b/lib/igt_aux.c
> index 65f832ab..ae076aaa 100644
> --- a/lib/igt_aux.c
> +++ b/lib/igt_aux.c
> @@ -395,7 +395,7 @@ void igt_stop_shrink_helper(void)
>  
>  static struct igt_helper_process hang_detector;
>  static void __attribute__((noreturn))
> -hang_detector_process(pid_t pid, dev_t rdev)
> +hang_detector_process(int fd, pid_t pid, dev_t rdev)
>  {
>       struct udev_monitor *mon =
>               udev_monitor_new_from_netlink(udev_new(), "kernel");
> @@ -429,8 +429,10 @@ hang_detector_process(pid_t pid, dev_t rdev)
>                       const char *str;
>  
>                       str = udev_device_get_property_value(dev, "ERROR");
> -                     if (str && atoi(str) == 1)
> +                     if (str && atoi(str) == 1) {
> +                             igt_debugfs_dump(fd, "i915_error_state");
>                               kill(pid, SIGIO);
> +                     }
>               }
>  
>               udev_device_unref(dev);
> @@ -462,7 +464,7 @@ void igt_fork_hang_detector(int fd)
>  
>       signal(SIGIO, sig_abort);
>       igt_fork_helper(&hang_detector)
> -             hang_detector_process(getppid(), st.st_rdev);
> +             hang_detector_process(fd, getppid(), st.st_rdev);
>  }
>  
>  void igt_stop_hang_detector(void)
> -- 
> 2.14.1
> 
> _______________________________________________
> Intel-gfx mailing list
> [email protected]
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to