Skip to content
/ linux Public

Commit 40c1ff2

Browse files
Thomas-fourierSasha Levin
authored andcommitted
fbdev: vt8500lcdfb: fix missing dma_free_coherent()
[ Upstream commit 88b3b99 ] fbi->fb.screen_buffer is allocated with dma_alloc_coherent() but is not freed if the error path is reached. Fixes: e7b9953 ("video: vt8500: Add devicetree support for vt8500-fb and wm8505-fb") Cc: <stable@vger.kernel.org> Signed-off-by: Thomas Fourier <fourier.thomas@gmail.com> Signed-off-by: Helge Deller <deller@gmx.de> Signed-off-by: Sasha Levin <sashal@kernel.org>
1 parent 11a9318 commit 40c1ff2

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

drivers/video/fbdev/vt8500lcdfb.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -369,7 +369,7 @@ static int vt8500lcd_probe(struct platform_device *pdev)
369369
if (fbi->palette_cpu == NULL) {
370370
dev_err(&pdev->dev, "Failed to allocate palette buffer\n");
371371
ret = -ENOMEM;
372-
goto failed_free_io;
372+
goto failed_free_mem_virt;
373373
}
374374

375375
irq = platform_get_irq(pdev, 0);
@@ -432,6 +432,9 @@ static int vt8500lcd_probe(struct platform_device *pdev)
432432
failed_free_palette:
433433
dma_free_coherent(&pdev->dev, fbi->palette_size,
434434
fbi->palette_cpu, fbi->palette_phys);
435+
failed_free_mem_virt:
436+
dma_free_coherent(&pdev->dev, fbi->fb.fix.smem_len,
437+
fbi->fb.screen_buffer, fbi->fb.fix.smem_start);
435438
failed_free_io:
436439
iounmap(fbi->regbase);
437440
failed_free_res:

0 commit comments

Comments
 (0)