If ttm_dma_tt_init fails memory is leaked.
Signed-off-by: Heinrich Schuchardt xypron.glpk@gmx.de --- drivers/gpu/drm/nouveau/nouveau_sgdma.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/nouveau/nouveau_sgdma.c b/drivers/gpu/drm/nouveau/nouveau_sgdma.c index a4d22e5..23d880b 100644 --- a/drivers/gpu/drm/nouveau/nouveau_sgdma.c +++ b/drivers/gpu/drm/nouveau/nouveau_sgdma.c @@ -109,7 +109,9 @@ nouveau_sgdma_create_ttm(struct ttm_bo_device *bdev, else nvbe->ttm.ttm.func = &nv50_sgdma_backend;
- if (ttm_dma_tt_init(&nvbe->ttm, bdev, size, page_flags, dummy_read_page)) + if (ttm_dma_tt_init(&nvbe->ttm, bdev, size, page_flags, dummy_read_page)) { + kfree(nvbe); return NULL; + } return &nvbe->ttm.ttm; }
----- Original Message -----
From: "Heinrich Schuchardt" xypron.glpk@gmx.de To: "David Airlie" airlied@linux.ie Cc: "Ben Skeggs" bskeggs@redhat.com, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, "Heinrich Schuchardt" xypron.glpk@gmx.de Sent: Thursday, 19 June, 2014 5:57:47 AM Subject: [PATCH] drm/nouveau: avoid memory leak
If ttm_dma_tt_init fails memory is leaked.
No, it's not. TTM calls the destroy function itself on failure.
Thanks, Ben.
Signed-off-by: Heinrich Schuchardt xypron.glpk@gmx.de
drivers/gpu/drm/nouveau/nouveau_sgdma.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/nouveau/nouveau_sgdma.c b/drivers/gpu/drm/nouveau/nouveau_sgdma.c index a4d22e5..23d880b 100644 --- a/drivers/gpu/drm/nouveau/nouveau_sgdma.c +++ b/drivers/gpu/drm/nouveau/nouveau_sgdma.c @@ -109,7 +109,9 @@ nouveau_sgdma_create_ttm(struct ttm_bo_device *bdev, else nvbe->ttm.ttm.func = &nv50_sgdma_backend;
- if (ttm_dma_tt_init(&nvbe->ttm, bdev, size, page_flags, dummy_read_page))
- if (ttm_dma_tt_init(&nvbe->ttm, bdev, size, page_flags, dummy_read_page)) {
return NULL;kfree(nvbe);
- } return &nvbe->ttm.ttm;
}
2.0.0
dri-devel@lists.freedesktop.org