ti_sn_bridge_parse_dsi_host() takes a reference to the remote DSI host node. If ti_sn_attach_host() fails, ti_sn_bridge_probe() removes the bridge but leaves the node reference held. The remove callback is not called after failed probe, so a deferred probe can leak another reference on each attempt. Drop the host node reference in the existing attachment failure path. Fixes: c3b75d4734cb ("drm/bridge: sn65dsi86: Register and attach our DSI device at probe") Cc: stable@vger.kernel.org Assisted-by: DeepSeek-V4.1-Flash and OpenAI Codex Signed-off-by: Wentao Liang --- drivers/gpu/drm/bridge/ti-sn65dsi86.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/gpu/drm/bridge/ti-sn65dsi86.c b/drivers/gpu/drm/bridge/ti-sn65dsi86.c index 48b83df9aed6..f4cf3b4af876 100644 --- a/drivers/gpu/drm/bridge/ti-sn65dsi86.c +++ b/drivers/gpu/drm/bridge/ti-sn65dsi86.c @@ -1465,6 +1465,7 @@ static int ti_sn_bridge_probe(struct auxiliary_device *adev, err_remove_bridge: drm_bridge_remove(&pdata->bridge); + of_node_put(pdata->host_node); return ret; } -- 2.34.1