[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20260125162357.2164209-1-lihaoxiang@isrc.iscas.ac.cn>
Date: Mon, 26 Jan 2026 00:23:57 +0800
From: Haoxiang Li <lihaoxiang@...c.iscas.ac.cn>
To: zack.rusin@...adcom.com,
bcm-kernel-feedback-list@...adcom.com,
maarten.lankhorst@...ux.intel.com,
mripard@...nel.org,
tzimmermann@...e.de,
airlied@...il.com,
simona@...ll.ch
Cc: linux-kernel@...r.kernel.org,
dri-devel@...ts.freedesktop.org,
Haoxiang Li <lihaoxiang@...c.iscas.ac.cn>
Subject: [PATCH] drm/vmwgfx: fix a potential memory leak in vmw_ttm_bind()
In vmw_ttm_bind(), if vmw_mob_create() fails, call
vmw_ttm_unmap_dma() to release the memory allocated
by vmw_ttm_map_dma().
Signed-off-by: Haoxiang Li <lihaoxiang@...c.iscas.ac.cn>
---
drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c b/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c
index 5553892d7c3e..6f6a73a7c857 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c
@@ -299,8 +299,10 @@ static int vmw_ttm_bind(struct ttm_device *bdev,
if (unlikely(vmw_be->mob == NULL)) {
vmw_be->mob =
vmw_mob_create(ttm->num_pages);
- if (unlikely(vmw_be->mob == NULL))
+ if (unlikely(vmw_be->mob == NULL)) {
+ vmw_ttm_unmap_dma(vmw_be);
return -ENOMEM;
+ }
}
ret = vmw_mob_bind(vmw_be->dev_priv, vmw_be->mob,
--
2.25.1
Powered by blists - more mailing lists