diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2021-05-15 12:50:57 +0300 |
---|---|---|
committer | Neil Armstrong <narmstrong@baylibre.com> | 2021-05-18 13:16:37 +0200 |
commit | 337ed732b35cdd7c8119d9464b40b6b539b75a25 (patch) | |
tree | 5fc04053363ff90b238d5c12b191013af4256cd2 /drivers | |
parent | 69fbffcc305e83c30ae219fdf814fa07a50fa213 (diff) |
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 <dan.carpenter@oracle.com>
Acked-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Link: https://patchwork.freedesktop.org/patch/msgid/YJ+ZgXTFa6voZuJG@mwanda
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpu/drm/bridge/ite-it66121.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/gpu/drm/bridge/ite-it66121.c b/drivers/gpu/drm/bridge/ite-it66121.c index 6980c9801d0d..7149ed40af83 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; |