From a49b4cffbe27108ddd30dbf865fdd4b556772e0c Mon Sep 17 00:00:00 2001 From: Jesper Juhl Date: Wed, 30 Mar 2005 16:48:34 -0800 Subject: [PATCH] remove redundant NULL checks before kfree() in drivers/video/ Signed-off-by: Jesper Juhl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- drivers/video/aty/atyfb_base.c | 8 +++----- drivers/video/aty/radeon_base.c | 12 ++++-------- drivers/video/aty/radeon_monitor.c | 6 ++---- drivers/video/console/bitblit.c | 11 ++++++----- drivers/video/console/sticore.c | 7 ++----- drivers/video/fbmem.c | 9 +++------ drivers/video/fbmon.c | 3 +-- drivers/video/igafb.c | 3 +-- drivers/video/pxafb.c | 3 +-- drivers/video/riva/fbdev.c | 3 +-- drivers/video/sa1100fb.c | 3 +-- drivers/video/w100fb.c | 6 ++---- 12 files changed, 27 insertions(+), 47 deletions(-) diff --git a/drivers/video/aty/atyfb_base.c b/drivers/video/aty/atyfb_base.c index dbe4bf3d4e863..8c42538dc8c12 100644 --- a/drivers/video/aty/atyfb_base.c +++ b/drivers/video/aty/atyfb_base.c @@ -3435,8 +3435,7 @@ static int __devinit atyfb_pci_probe(struct pci_dev *pdev, const struct pci_devi err_release_io: #ifdef __sparc__ - if (par->mmap_map) - kfree(par->mmap_map); + kfree(par->mmap_map); #else if (par->ati_regbase) iounmap(par->ati_regbase); @@ -3444,7 +3443,7 @@ err_release_io: iounmap(info->screen_base); #endif err_release_mem: - if(par->aux_start) + if (par->aux_start) release_mem_region(par->aux_start, par->aux_size); release_mem_region(par->res_start, par->res_size); @@ -3551,8 +3550,7 @@ static void __devexit atyfb_remove(struct fb_info *info) #endif #endif #ifdef __sparc__ - if (par->mmap_map) - kfree(par->mmap_map); + kfree(par->mmap_map); #endif if (par->aux_start) release_mem_region(par->aux_start, par->aux_size); diff --git a/drivers/video/aty/radeon_base.c b/drivers/video/aty/radeon_base.c index a73b566aafb74..409a78e34f43d 100644 --- a/drivers/video/aty/radeon_base.c +++ b/drivers/video/aty/radeon_base.c @@ -2420,10 +2420,8 @@ static int radeonfb_pci_register (struct pci_dev *pdev, err_unmap_fb: iounmap(rinfo->fb_base); err_unmap_rom: - if (rinfo->mon1_EDID) - kfree(rinfo->mon1_EDID); - if (rinfo->mon2_EDID) - kfree(rinfo->mon2_EDID); + kfree(rinfo->mon1_EDID); + kfree(rinfo->mon2_EDID); if (rinfo->mon1_modedb) fb_destroy_modedb(rinfo->mon1_modedb); fb_dealloc_cmap(&info->cmap); @@ -2479,10 +2477,8 @@ static void __devexit radeonfb_pci_unregister (struct pci_dev *pdev) pci_release_regions(pdev); - if (rinfo->mon1_EDID) - kfree(rinfo->mon1_EDID); - if (rinfo->mon2_EDID) - kfree(rinfo->mon2_EDID); + kfree(rinfo->mon1_EDID); + kfree(rinfo->mon2_EDID); if (rinfo->mon1_modedb) fb_destroy_modedb(rinfo->mon1_modedb); #ifdef CONFIG_FB_RADEON_I2C diff --git a/drivers/video/aty/radeon_monitor.c b/drivers/video/aty/radeon_monitor.c index 321adf645424b..4046d56031fb7 100644 --- a/drivers/video/aty/radeon_monitor.c +++ b/drivers/video/aty/radeon_monitor.c @@ -618,11 +618,9 @@ void __devinit radeon_probe_screens(struct radeonfb_info *rinfo, } } if (ignore_edid) { - if (rinfo->mon1_EDID) - kfree(rinfo->mon1_EDID); + kfree(rinfo->mon1_EDID); rinfo->mon1_EDID = NULL; - if (rinfo->mon2_EDID) - kfree(rinfo->mon2_EDID); + kfree(rinfo->mon2_EDID); rinfo->mon2_EDID = NULL; } diff --git a/drivers/video/console/bitblit.c b/drivers/video/console/bitblit.c index b1d435940eb12..b28a4b0e395e6 100644 --- a/drivers/video/console/bitblit.c +++ b/drivers/video/console/bitblit.c @@ -199,7 +199,10 @@ static void bit_putcs(struct vc_data *vc, struct fb_info *info, count -= cnt; } - if (buf) + /* buf is always NULL except when in monochrome mode, so in this case + it's a gain to check buf against NULL even though kfree() handles + NULL pointers just fine */ + if (unlikely(buf)) kfree(buf); } @@ -273,8 +276,7 @@ static void bit_cursor(struct vc_data *vc, struct fb_info *info, dst = kmalloc(w * vc->vc_font.height, GFP_ATOMIC); if (!dst) return; - if (ops->cursor_data) - kfree(ops->cursor_data); + kfree(ops->cursor_data); ops->cursor_data = dst; update_attr(dst, src, attribute, vc); src = dst; @@ -321,8 +323,7 @@ static void bit_cursor(struct vc_data *vc, struct fb_info *info, if (!mask) return; - if (ops->cursor_state.mask) - kfree(ops->cursor_state.mask); + kfree(ops->cursor_state.mask); ops->cursor_state.mask = mask; p->cursor_shape = vc->vc_cursor_type; diff --git a/drivers/video/console/sticore.c b/drivers/video/console/sticore.c index 2a4efee12a81f..d940f605acb68 100644 --- a/drivers/video/console/sticore.c +++ b/drivers/video/console/sticore.c @@ -798,11 +798,8 @@ sti_read_rom(int wordmode, struct sti_struct *sti, unsigned long address) return 1; out_err: - if(raw) - kfree(raw); - if(cooked) - kfree(cooked); - + kfree(raw); + kfree(cooked); return 0; } diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c index 4a45e287ba459..25f460ca0daf1 100644 --- a/drivers/video/fbmem.c +++ b/drivers/video/fbmem.c @@ -446,8 +446,7 @@ int fb_show_logo(struct fb_info *info) logo_new = kmalloc(fb_logo.logo->width * fb_logo.logo->height, GFP_KERNEL); if (logo_new == NULL) { - if (palette) - kfree(palette); + kfree(palette); if (saved_pseudo_palette) info->pseudo_palette = saved_pseudo_palette; return 0; @@ -466,12 +465,10 @@ int fb_show_logo(struct fb_info *info) info->fbops->fb_imageblit(info, &image); } - if (palette != NULL) - kfree(palette); + kfree(palette); if (saved_pseudo_palette != NULL) info->pseudo_palette = saved_pseudo_palette; - if (logo_new != NULL) - kfree(logo_new); + kfree(logo_new); return fb_logo.logo->height; } #else diff --git a/drivers/video/fbmon.c b/drivers/video/fbmon.c index ab0c201eaa09d..978def0135879 100644 --- a/drivers/video/fbmon.c +++ b/drivers/video/fbmon.c @@ -588,8 +588,7 @@ static struct fb_videomode *fb_create_modedb(unsigned char *edid, int *dbsize) */ void fb_destroy_modedb(struct fb_videomode *modedb) { - if (modedb) - kfree(modedb); + kfree(modedb); } static int fb_get_monitor_limits(unsigned char *edid, struct fb_monspecs *specs) diff --git a/drivers/video/igafb.c b/drivers/video/igafb.c index 2da19ea040d0f..e326f44f652d7 100644 --- a/drivers/video/igafb.c +++ b/drivers/video/igafb.c @@ -536,8 +536,7 @@ int __init igafb_init(void) if (!iga_init(info, par)) { iounmap((void *)par->io_base); iounmap(info->screen_base); - if (par->mmap_map) - kfree(par->mmap_map); + kfree(par->mmap_map); kfree(info); } diff --git a/drivers/video/pxafb.c b/drivers/video/pxafb.c index 552a38e5f143f..483ad9bab5390 100644 --- a/drivers/video/pxafb.c +++ b/drivers/video/pxafb.c @@ -1343,8 +1343,7 @@ int __init pxafb_probe(struct device *dev) failed: dev_set_drvdata(dev, NULL); - if (fbi) - kfree(fbi); + kfree(fbi); return ret; } diff --git a/drivers/video/riva/fbdev.c b/drivers/video/riva/fbdev.c index 5c5714a7dde63..b0c886de04043 100644 --- a/drivers/video/riva/fbdev.c +++ b/drivers/video/riva/fbdev.c @@ -2108,8 +2108,7 @@ static void __exit rivafb_remove(struct pci_dev *pd) #ifdef CONFIG_FB_RIVA_I2C riva_delete_i2c_busses(par); - if (par->EDID) - kfree(par->EDID); + kfree(par->EDID); #endif unregister_framebuffer(info); diff --git a/drivers/video/sa1100fb.c b/drivers/video/sa1100fb.c index 33bedf94247ec..4f8043a71f21d 100644 --- a/drivers/video/sa1100fb.c +++ b/drivers/video/sa1100fb.c @@ -1507,8 +1507,7 @@ static int __init sa1100fb_probe(struct device *dev) failed: dev_set_drvdata(dev, NULL); - if (fbi) - kfree(fbi); + kfree(fbi); release_mem_region(0xb0100000, 0x10000); return ret; } diff --git a/drivers/video/w100fb.c b/drivers/video/w100fb.c index 8c4de81629720..057e154c8858d 100644 --- a/drivers/video/w100fb.c +++ b/drivers/video/w100fb.c @@ -537,10 +537,8 @@ static void w100fb_clear_buffer(void) { int i; for (i = 0; i < W100_BUF_NUM; i++) { - if (gSaveImagePtr[i] != NULL) { - kfree(gSaveImagePtr[i]); - gSaveImagePtr[i] = NULL; - } + kfree(gSaveImagePtr[i]); + gSaveImagePtr[i] = NULL; } } -- cgit 1.2.3-korg