[PATCH] ioremap balanced with iounmap for drivers/video/amifb
ioremap must be balanced by an iounmap and failing to do so can result in a memory leak. Signed-off-by: Amol Lad <amol@verismonetworks.com> Cc: "Antonino A. Daplas" <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Родитель
6792951b6a
Коммит
57354c42f1
|
@ -2407,10 +2407,10 @@ default_chipset:
|
||||||
fb_info.fix.smem_len);
|
fb_info.fix.smem_len);
|
||||||
if (!videomemory) {
|
if (!videomemory) {
|
||||||
printk("amifb: WARNING! unable to map videomem cached writethrough\n");
|
printk("amifb: WARNING! unable to map videomem cached writethrough\n");
|
||||||
videomemory = ZTWO_VADDR(fb_info.fix.smem_start);
|
fb_info.screen_base = (char *)ZTWO_VADDR(fb_info.fix.smem_start);
|
||||||
}
|
} else
|
||||||
|
fb_info.screen_base = (char *)videomemory;
|
||||||
|
|
||||||
fb_info.screen_base = (char *)videomemory;
|
|
||||||
memset(dummysprite, 0, DUMMYSPRITEMEMSIZE);
|
memset(dummysprite, 0, DUMMYSPRITEMEMSIZE);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -2453,6 +2453,8 @@ static void amifb_deinit(void)
|
||||||
{
|
{
|
||||||
fb_dealloc_cmap(&fb_info.cmap);
|
fb_dealloc_cmap(&fb_info.cmap);
|
||||||
chipfree();
|
chipfree();
|
||||||
|
if (videomemory)
|
||||||
|
iounmap((void*)videomemory);
|
||||||
release_mem_region(CUSTOM_PHYSADDR+0xe0, 0x120);
|
release_mem_region(CUSTOM_PHYSADDR+0xe0, 0x120);
|
||||||
custom.dmacon = DMAF_ALL | DMAF_MASTER;
|
custom.dmacon = DMAF_ALL | DMAF_MASTER;
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче