Message ID | 20250204070528.1919158-5-raag.jadav@intel.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Introduce DRM device wedged event | expand |
On Tue, Feb 04, 2025 at 12:35:27PM +0530, Raag Jadav wrote: > Now that we have device wedged event provided by DRM core, make use > of it and support both driver rebind and bus-reset based recovery. > With this in place, userspace will be notified of wedged device on > gt reset failure. > > Signed-off-by: Raag Jadav <raag.jadav@intel.com> > Reviewed-by: Aravind Iddamsetty <aravind.iddamsetty@linux.intel.com> > --- > drivers/gpu/drm/i915/gt/intel_reset.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/gpu/drm/i915/gt/intel_reset.c b/drivers/gpu/drm/i915/gt/intel_reset.c Joonas, Tvrtko, ack on getting this through drm-misc-next? > index aae5a081cb53..d6dc12fd87c1 100644 > --- a/drivers/gpu/drm/i915/gt/intel_reset.c > +++ b/drivers/gpu/drm/i915/gt/intel_reset.c > @@ -1422,6 +1422,9 @@ static void intel_gt_reset_global(struct intel_gt *gt, > > if (!test_bit(I915_WEDGED, >->reset.flags)) > kobject_uevent_env(kobj, KOBJ_CHANGE, reset_done_event); > + else > + drm_dev_wedged_event(>->i915->drm, > + DRM_WEDGE_RECOVERY_REBIND | DRM_WEDGE_RECOVERY_BUS_RESET); > } > > /** > -- > 2.34.1 >
On 04/02/2025 17:24, Rodrigo Vivi wrote: > On Tue, Feb 04, 2025 at 12:35:27PM +0530, Raag Jadav wrote: >> Now that we have device wedged event provided by DRM core, make use >> of it and support both driver rebind and bus-reset based recovery. >> With this in place, userspace will be notified of wedged device on >> gt reset failure. >> >> Signed-off-by: Raag Jadav <raag.jadav@intel.com> >> Reviewed-by: Aravind Iddamsetty <aravind.iddamsetty@linux.intel.com> >> --- >> drivers/gpu/drm/i915/gt/intel_reset.c | 3 +++ >> 1 file changed, 3 insertions(+) >> >> diff --git a/drivers/gpu/drm/i915/gt/intel_reset.c b/drivers/gpu/drm/i915/gt/intel_reset.c > > Joonas, Tvrtko, ack on getting this through drm-misc-next? Acked-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com> Regards, Tvrtko >> index aae5a081cb53..d6dc12fd87c1 100644 >> --- a/drivers/gpu/drm/i915/gt/intel_reset.c >> +++ b/drivers/gpu/drm/i915/gt/intel_reset.c >> @@ -1422,6 +1422,9 @@ static void intel_gt_reset_global(struct intel_gt *gt, >> >> if (!test_bit(I915_WEDGED, >->reset.flags)) >> kobject_uevent_env(kobj, KOBJ_CHANGE, reset_done_event); >> + else >> + drm_dev_wedged_event(>->i915->drm, >> + DRM_WEDGE_RECOVERY_REBIND | DRM_WEDGE_RECOVERY_BUS_RESET); >> } >> >> /** >> -- >> 2.34.1 >>
diff --git a/drivers/gpu/drm/i915/gt/intel_reset.c b/drivers/gpu/drm/i915/gt/intel_reset.c index aae5a081cb53..d6dc12fd87c1 100644 --- a/drivers/gpu/drm/i915/gt/intel_reset.c +++ b/drivers/gpu/drm/i915/gt/intel_reset.c @@ -1422,6 +1422,9 @@ static void intel_gt_reset_global(struct intel_gt *gt, if (!test_bit(I915_WEDGED, >->reset.flags)) kobject_uevent_env(kobj, KOBJ_CHANGE, reset_done_event); + else + drm_dev_wedged_event(>->i915->drm, + DRM_WEDGE_RECOVERY_REBIND | DRM_WEDGE_RECOVERY_BUS_RESET); } /**