On Wed, May 12, 2021 at 08:56:09PM +0100, Colin King wrote:
From: Colin Ian King colin.king@canonical.com
In the case where fifo->static_buffer fails to be allocated the error return path neglects to kfree the fifo object. Fix this by adding in the missing kfree.
Addresses-Coverity: ("Resource leak") Fixes: 2cd80dbd3551 ("drm/vmwgfx: Add basic support for SVGA3") Signed-off-by: Colin Ian King colin.king@canonical.com
drivers/gpu/drm/vmwgfx/vmwgfx_cmd.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_cmd.c b/drivers/gpu/drm/vmwgfx/vmwgfx_cmd.c index 027d7d504e78..e5fa210f589e 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_cmd.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_cmd.c @@ -107,8 +107,10 @@ struct vmw_fifo_state *vmw_fifo_create(struct vmw_private *dev_priv) fifo = kzalloc(sizeof(*fifo), GFP_KERNEL);
This needs an:
if (!fifo) return -ENOMEM;
fifo->static_buffer_size = VMWGFX_FIFO_STATIC_SIZE; fifo->static_buffer = vmalloc(fifo->static_buffer_size);
- if (unlikely(fifo->static_buffer == NULL))
- if (unlikely(fifo->static_buffer == NULL)) {
return ERR_PTR(-ENOMEM);kfree(fifo);
- }
regards, dan carpenter