Commit 491bcc9b authored by Krzysztof Helt's avatar Krzysztof Helt Committed by Linus Torvalds

fbdev: use framebuffer_release() for freeing fb_info structures

Use the framebuffer_release() for freeing fb_info structures allocated
with framebuffer_alloc().
Signed-off-by: default avatarKrzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent f73323de
...@@ -493,7 +493,7 @@ static void __init offb_init_fb(const char *name, const char *full_name, ...@@ -493,7 +493,7 @@ static void __init offb_init_fb(const char *name, const char *full_name,
iounmap(par->cmap_adr); iounmap(par->cmap_adr);
par->cmap_adr = NULL; par->cmap_adr = NULL;
iounmap(info->screen_base); iounmap(info->screen_base);
kfree(info); framebuffer_release(info);
release_mem_region(res_start, res_size); release_mem_region(res_start, res_size);
return; return;
} }
......
...@@ -1748,7 +1748,7 @@ static void __devexit pm2fb_remove(struct pci_dev *pdev) ...@@ -1748,7 +1748,7 @@ static void __devexit pm2fb_remove(struct pci_dev *pdev)
pci_set_drvdata(pdev, NULL); pci_set_drvdata(pdev, NULL);
fb_dealloc_cmap(&info->cmap); fb_dealloc_cmap(&info->cmap);
kfree(info->pixmap.addr); kfree(info->pixmap.addr);
kfree(info); framebuffer_release(info);
} }
static struct pci_device_id pm2fb_id_table[] = { static struct pci_device_id pm2fb_id_table[] = {
......
...@@ -5928,7 +5928,7 @@ sisfb_probe(struct pci_dev *pdev, const struct pci_device_id *ent) ...@@ -5928,7 +5928,7 @@ sisfb_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
if(pci_enable_device(pdev)) { if(pci_enable_device(pdev)) {
if(ivideo->nbridge) pci_dev_put(ivideo->nbridge); if(ivideo->nbridge) pci_dev_put(ivideo->nbridge);
pci_set_drvdata(pdev, NULL); pci_set_drvdata(pdev, NULL);
kfree(sis_fb_info); framebuffer_release(sis_fb_info);
return -EIO; return -EIO;
} }
} }
...@@ -6134,7 +6134,7 @@ error_3: vfree(ivideo->bios_abase); ...@@ -6134,7 +6134,7 @@ error_3: vfree(ivideo->bios_abase);
pci_set_drvdata(pdev, NULL); pci_set_drvdata(pdev, NULL);
if(!ivideo->sisvga_enabled) if(!ivideo->sisvga_enabled)
pci_disable_device(pdev); pci_disable_device(pdev);
kfree(sis_fb_info); framebuffer_release(sis_fb_info);
return ret; return ret;
} }
......
...@@ -1380,7 +1380,7 @@ stifb_cleanup(void) ...@@ -1380,7 +1380,7 @@ stifb_cleanup(void)
if (info->screen_base) if (info->screen_base)
iounmap(info->screen_base); iounmap(info->screen_base);
fb_dealloc_cmap(&info->cmap); fb_dealloc_cmap(&info->cmap);
kfree(info); framebuffer_release(info);
} }
sti->info = NULL; sti->info = NULL;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment