drm/i915/gvt: fix memory leak of a cmd_entry struct on error exit path
authorColin Ian King <colin.king@canonical.com>
Tue, 10 Apr 2018 12:33:12 +0000 (13:33 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 4 Nov 2018 13:52:48 +0000 (14:52 +0100)
commit ffdf16edfbbe77f5f5c3c87fe8d7387ecd16241b upstream

The error exit path when a duplicate is found does not kfree and cmd_entry
struct and hence there is a small memory leak.  Fix this by kfree'ing it.

Detected by CoverityScan, CID#1370198 ("Resource Leak")

Fixes: be1da7070aea ("drm/i915/gvt: vGPU command scanner")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Signed-off-by: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
Acked-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/i915/gvt/cmd_parser.c

index d4726a3..d6993c2 100644 (file)
@@ -2802,6 +2802,7 @@ static int init_cmd_table(struct intel_gvt *gvt)
                if (info) {
                        gvt_err("%s %s duplicated\n", e->info->name,
                                        info->name);
+                       kfree(e);
                        return -EEXIST;
                }