Message ID | 20180116134010.20307-5-lionel.g.landwerlin@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Quoting Lionel Landwerlin (2018-01-16 13:40:08) > This might be useful information for developers looking at an error > state. > > v2: Place topology towards the end of the error state (Chris) > > v3: Reuse common printing code (Michal) > > Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> > Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> > --- > drivers/gpu/drm/i915/i915_gpu_error.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c > index 944059322daa..aaa34a2bebe1 100644 > --- a/drivers/gpu/drm/i915/i915_gpu_error.c > +++ b/drivers/gpu/drm/i915/i915_gpu_error.c > @@ -605,6 +605,14 @@ static void err_print_uc(struct drm_i915_error_state_buf *m, > print_error_obj(m, NULL, "GuC log buffer", error_uc->guc_log); > } > > +static void err_print_rcs_topology(struct drm_i915_error_state_buf *m, > + const struct sseu_dev_info *sseu) > +{ > + struct drm_printer p = i915_error_printer(m); > + > + intel_device_info_dump_topology(sseu, &p); > +} > + > int i915_error_state_to_str(struct drm_i915_error_state_buf *m, > const struct i915_gpu_state *error) > { > @@ -787,6 +795,7 @@ int i915_error_state_to_str(struct drm_i915_error_state_buf *m, > intel_display_print_error_state(m, error->display); > > err_print_capabilities(m, &error->device_info); > + err_print_rcs_topology(m, &INTEL_INFO(dev_priv)->sseu); Did we not acquire a copy of sseu via error->device_info above? Looks like this would be a one-liner to print-caps. -Chris
On 16/01/18 13:57, Chris Wilson wrote: > Quoting Lionel Landwerlin (2018-01-16 13:40:08) >> This might be useful information for developers looking at an error >> state. >> >> v2: Place topology towards the end of the error state (Chris) >> >> v3: Reuse common printing code (Michal) >> >> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> >> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> >> --- >> drivers/gpu/drm/i915/i915_gpu_error.c | 9 +++++++++ >> 1 file changed, 9 insertions(+) >> >> diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c >> index 944059322daa..aaa34a2bebe1 100644 >> --- a/drivers/gpu/drm/i915/i915_gpu_error.c >> +++ b/drivers/gpu/drm/i915/i915_gpu_error.c >> @@ -605,6 +605,14 @@ static void err_print_uc(struct drm_i915_error_state_buf *m, >> print_error_obj(m, NULL, "GuC log buffer", error_uc->guc_log); >> } >> >> +static void err_print_rcs_topology(struct drm_i915_error_state_buf *m, >> + const struct sseu_dev_info *sseu) >> +{ >> + struct drm_printer p = i915_error_printer(m); >> + >> + intel_device_info_dump_topology(sseu, &p); >> +} >> + >> int i915_error_state_to_str(struct drm_i915_error_state_buf *m, >> const struct i915_gpu_state *error) >> { >> @@ -787,6 +795,7 @@ int i915_error_state_to_str(struct drm_i915_error_state_buf *m, >> intel_display_print_error_state(m, error->display); >> >> err_print_capabilities(m, &error->device_info); >> + err_print_rcs_topology(m, &INTEL_INFO(dev_priv)->sseu); > Did we not acquire a copy of sseu via error->device_info above? Looks > like this would be a one-liner to print-caps. > -Chris > Sold.
diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c index 944059322daa..aaa34a2bebe1 100644 --- a/drivers/gpu/drm/i915/i915_gpu_error.c +++ b/drivers/gpu/drm/i915/i915_gpu_error.c @@ -605,6 +605,14 @@ static void err_print_uc(struct drm_i915_error_state_buf *m, print_error_obj(m, NULL, "GuC log buffer", error_uc->guc_log); } +static void err_print_rcs_topology(struct drm_i915_error_state_buf *m, + const struct sseu_dev_info *sseu) +{ + struct drm_printer p = i915_error_printer(m); + + intel_device_info_dump_topology(sseu, &p); +} + int i915_error_state_to_str(struct drm_i915_error_state_buf *m, const struct i915_gpu_state *error) { @@ -787,6 +795,7 @@ int i915_error_state_to_str(struct drm_i915_error_state_buf *m, intel_display_print_error_state(m, error->display); err_print_capabilities(m, &error->device_info); + err_print_rcs_topology(m, &INTEL_INFO(dev_priv)->sseu); err_print_params(m, &error->params); err_print_uc(m, &error->uc);