aboutsummaryrefslogtreecommitdiffstats
path: root/net/core/devlink.c
diff options
context:
space:
mode:
authorColin Ian King <colin.king@canonical.com>2018-01-22 10:31:19 +0000
committerDavid S. Miller <davem@davemloft.net>2018-01-22 09:27:10 -0500
commitb75703de16301b80f1eedecafdf37bb02c9e155f (patch)
tree834fb1ed28387d7ebb81c5f9a6a8653a6ee7f72e /net/core/devlink.c
parentMerge branch 'mlxsw-spectrum_router-Optimize-LPM-trees' (diff)
downloadlinux-dev-b75703de16301b80f1eedecafdf37bb02c9e155f.tar.xz
linux-dev-b75703de16301b80f1eedecafdf37bb02c9e155f.zip
devlink: fix memory leak on 'resource'
Currently, if the call to devlink_resource_find returns null then the error exit path does not free the devlink_resource 'resource' and a memory leak occurs. Fix this by kfree'ing resource on the error exit path. Detected by CoverityScan, CID#1464184 ("Resource leak") Fixes: d9f9b9a4d05f ("devlink: Add support for resource abstraction") Signed-off-by: Colin Ian King <colin.king@canonical.com> Acked-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core/devlink.c')
-rw-r--r--net/core/devlink.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/core/devlink.c b/net/core/devlink.c
index 66d36705fb9d..18d385ed8237 100644
--- a/net/core/devlink.c
+++ b/net/core/devlink.c
@@ -3182,6 +3182,7 @@ int devlink_resource_register(struct devlink *devlink,
resource_list = &parent_resource->resource_list;
resource->parent = parent_resource;
} else {
+ kfree(resource);
err = -EINVAL;
goto out;
}