From: Dan Carpenter Date: Sat, 15 May 2021 09:50:57 +0000 (+0300) Subject: drm: bridge: it66121: fix a resource leak in probe X-Git-Tag: howlett/maple/20220722_2~2859^2~18^2~95 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=337ed732b35cdd7c8119d9464b40b6b539b75a25;p=users%2Fjedix%2Flinux-maple.git drm: bridge: it66121: fix a resource leak in probe In the original code if the "ctx = devm_kzalloc()" allocation failed then we should have called of_node_put(ep); before returning. It's actually a bit easier to do the allocation first before assigning ep = of_graph_get_endpoint_by_regs(). Fixes: 988156dc2fc9 ("drm: bridge: add it66121 driver") Signed-off-by: Dan Carpenter Acked-by: Neil Armstrong Signed-off-by: Neil Armstrong Link: https://patchwork.freedesktop.org/patch/msgid/YJ+ZgXTFa6voZuJG@mwanda --- diff --git a/drivers/gpu/drm/bridge/ite-it66121.c b/drivers/gpu/drm/bridge/ite-it66121.c index 6980c9801d0da..7149ed40af83c 100644 --- a/drivers/gpu/drm/bridge/ite-it66121.c +++ b/drivers/gpu/drm/bridge/ite-it66121.c @@ -898,14 +898,14 @@ static int it66121_probe(struct i2c_client *client, return -ENXIO; } - ep = of_graph_get_endpoint_by_regs(dev->of_node, 0, 0); - if (!ep) - return -EINVAL; - ctx = devm_kzalloc(dev, sizeof(*ctx), GFP_KERNEL); if (!ctx) return -ENOMEM; + ep = of_graph_get_endpoint_by_regs(dev->of_node, 0, 0); + if (!ep) + return -EINVAL; + ctx->dev = dev; ctx->client = client;