[PATCH 01/13] drm/i915/gvt: fix a memory leak in intel_gvt_init_vgpu_types
Christoph Hellwig
hch at lst.de
Tue Jun 28 05:14:23 UTC 2022
gvt->types needs to be freed on error.
Reported-by: Kevin Tian <kevin.tian at intel.com>
Signed-off-by: Christoph Hellwig <hch at lst.de>
---
drivers/gpu/drm/i915/gvt/vgpu.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/gvt/vgpu.c b/drivers/gpu/drm/i915/gvt/vgpu.c
index 46da19b3225d2..5c828556cefd7 100644
--- a/drivers/gpu/drm/i915/gvt/vgpu.c
+++ b/drivers/gpu/drm/i915/gvt/vgpu.c
@@ -142,7 +142,7 @@ int intel_gvt_init_vgpu_types(struct intel_gvt *gvt)
if (vgpu_types[i].weight < 1 ||
vgpu_types[i].weight > VGPU_MAX_WEIGHT)
- return -EINVAL;
+ goto out_free_types;
gvt->types[i].weight = vgpu_types[i].weight;
gvt->types[i].resolution = vgpu_types[i].edid;
@@ -167,6 +167,10 @@ int intel_gvt_init_vgpu_types(struct intel_gvt *gvt)
gvt->num_types = i;
return 0;
+
+out_free_types:
+ kfree(gvt->types);
+ return -EINVAL;
}
void intel_gvt_clean_vgpu_types(struct intel_gvt *gvt)
--
2.30.2
More information about the intel-gvt-dev
mailing list