lt9611_parse_dt() obtains references to the remote DSI nodes before looking up the downstream bridge. If that lookup fails, for example with -EPROBE_DEFER, lt9611_probe() returns without releasing the DSI node references. Use the existing err_of_put cleanup path when parsing fails. Both node pointers are zero-initialized, so this also handles a missing DSI node. Fixes: 23278bf54afe ("drm/bridge: Introduce LT9611 DSI to HDMI bridge") Cc: stable@vger.kernel.org Assisted-by: DeepSeek-V4.1-Flash and OpenAI Codex Signed-off-by: Wentao Liang --- drivers/gpu/drm/bridge/lontium-lt9611.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/bridge/lontium-lt9611.c b/drivers/gpu/drm/bridge/lontium-lt9611.c index 2d1a28261037..3c3e91e19fbd 100644 --- a/drivers/gpu/drm/bridge/lontium-lt9611.c +++ b/drivers/gpu/drm/bridge/lontium-lt9611.c @@ -1116,7 +1116,7 @@ static int lt9611_probe(struct i2c_client *client) ret = lt9611_parse_dt(dev, lt9611); if (ret) { dev_err(dev, "failed to parse device tree\n"); - return ret; + goto err_of_put; } ret = lt9611_gpio_init(lt9611); -- 2.34.1