On Friday, 21 February 2025 00:41:41 Central European Standard Time Heiko Stuebner wrote: > When the drm-driver probes, it mainly creates the component device, where > all the sub-drivers (vops, hdmi, etc) hook into. > > This will cause the shutdown handler to get called on shutdown, even > though the drm-device might not have been set up, or the component bind > might have failed. > > So use the new component helper to check whether the drm-device is up > and only then call the drm-atomic helper to release all the drm magic. > > This prevents failures when the drm-device is never set, or has been > freed up already for example by a probe-defer during the component bind. > > Signed-off-by: Heiko Stuebner <heiko@xxxxxxxxx> > --- > drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) Reviewed-by: Nicolas Frattaroli <nicolas.frattaroli@xxxxxxxxxxxxx> Tested-by: Nicolas Frattaroli <nicolas.frattaroli@xxxxxxxxxxxxx> Tested on a RK3588 ROCK5B by adding a `return -EPROBE_DEFER` into the middle of `rockchip_drm_bind` after `component_bind_all` already ran. Without the patch, I get a stacktrace in `drm_atomic_helper_shutdown`. With the patch, I don't get one.