diff options
author | 2021-05-15 12:50:57 +0300 | |
---|---|---|
committer | 2021-05-18 13:16:37 +0200 | |
commit | 337ed732b35cdd7c8119d9464b40b6b539b75a25 (patch) | |
tree | 5fc04053363ff90b238d5c12b191013af4256cd2 | |
parent | drm: bridge: it66121: fix an error code in it66121_probe() (diff) | |
download | linux-dev-337ed732b35cdd7c8119d9464b40b6b539b75a25.tar.xz linux-dev-337ed732b35cdd7c8119d9464b40b6b539b75a25.zip |
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
-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; |