From: Jesper Juhl This is the drivers/media/ part of the big kfree cleanup patch. Remove pointless checks for NULL prior to calling kfree() in drivers/media/. Signed-off-by: Jesper Juhl Cc: Johannes Stezenbach Cc: Michael Krufky Cc: Mauro Carvalho Chehab Signed-off-by: Andrew Morton --- drivers/media/dvb/bt8xx/dst.c | 8 ++------ drivers/media/dvb/frontends/dvb_dummy_fe.c | 4 ++-- drivers/media/dvb/frontends/l64781.c | 3 ++- drivers/media/dvb/frontends/lgdt330x.c | 3 +-- drivers/media/dvb/frontends/mt312.c | 3 +-- drivers/media/dvb/frontends/or51132.c | 3 +-- drivers/media/video/arv.c | 12 ++++-------- drivers/media/video/bttv-driver.c | 6 ++---- drivers/media/video/v4l1-compat.c | 6 ++---- drivers/media/video/videocodec.c | 6 ++---- drivers/media/video/videodev.c | 3 +-- drivers/media/video/zoran_card.c | 14 ++++++-------- 12 files changed, 26 insertions(+), 45 deletions(-) diff -puN drivers/media/dvb/bt8xx/dst.c~kfree-cleanup-drivers-media drivers/media/dvb/bt8xx/dst.c --- devel/drivers/media/dvb/bt8xx/dst.c~kfree-cleanup-drivers-media 2005-10-14 01:44:46.000000000 -0700 +++ devel-akpm/drivers/media/dvb/bt8xx/dst.c 2005-10-14 01:44:46.000000000 -0700 @@ -1331,9 +1331,7 @@ struct dst_state *dst_attach(struct dst_ { /* check if the ASIC is there */ if (dst_probe(state) < 0) { - if (state) - kfree(state); - + kfree(state); return NULL; } /* determine settings based on type */ @@ -1349,9 +1347,7 @@ struct dst_state *dst_attach(struct dst_ break; default: dprintk(verbose, DST_ERROR, 1, "unknown DST type. please report to the LinuxTV.org DVB mailinglist."); - if (state) - kfree(state); - + kfree(state); return NULL; } diff -puN drivers/media/dvb/frontends/dvb_dummy_fe.c~kfree-cleanup-drivers-media drivers/media/dvb/frontends/dvb_dummy_fe.c --- devel/drivers/media/dvb/frontends/dvb_dummy_fe.c~kfree-cleanup-drivers-media 2005-10-14 01:44:46.000000000 -0700 +++ devel-akpm/drivers/media/dvb/frontends/dvb_dummy_fe.c 2005-10-14 01:44:46.000000000 -0700 @@ -148,7 +148,7 @@ struct dvb_frontend* dvb_dummy_fe_qpsk_a return &state->frontend; error: - if (state) kfree(state); + kfree(state); return NULL; } @@ -171,7 +171,7 @@ struct dvb_frontend* dvb_dummy_fe_qam_at return &state->frontend; error: - if (state) kfree(state); + kfree(state); return NULL; } diff -puN drivers/media/dvb/frontends/l64781.c~kfree-cleanup-drivers-media drivers/media/dvb/frontends/l64781.c --- devel/drivers/media/dvb/frontends/l64781.c~kfree-cleanup-drivers-media 2005-10-14 01:44:46.000000000 -0700 +++ devel-akpm/drivers/media/dvb/frontends/l64781.c 2005-10-14 01:44:46.000000000 -0700 @@ -559,7 +559,8 @@ struct dvb_frontend* l64781_attach(const return &state->frontend; error: - if (reg0x3e >= 0) l64781_writereg (state, 0x3e, reg0x3e); /* restore reg 0x3e */ + if (reg0x3e >= 0) + l64781_writereg (state, 0x3e, reg0x3e); /* restore reg 0x3e */ kfree(state); return NULL; } diff -puN drivers/media/dvb/frontends/lgdt330x.c~kfree-cleanup-drivers-media drivers/media/dvb/frontends/lgdt330x.c --- devel/drivers/media/dvb/frontends/lgdt330x.c~kfree-cleanup-drivers-media 2005-10-14 01:44:46.000000000 -0700 +++ devel-akpm/drivers/media/dvb/frontends/lgdt330x.c 2005-10-14 01:44:46.000000000 -0700 @@ -731,8 +731,7 @@ struct dvb_frontend* lgdt330x_attach(con return &state->frontend; error: - if (state) - kfree(state); + kfree(state); dprintk("%s: ERROR\n",__FUNCTION__); return NULL; } diff -puN drivers/media/dvb/frontends/mt312.c~kfree-cleanup-drivers-media drivers/media/dvb/frontends/mt312.c --- devel/drivers/media/dvb/frontends/mt312.c~kfree-cleanup-drivers-media 2005-10-14 01:44:46.000000000 -0700 +++ devel-akpm/drivers/media/dvb/frontends/mt312.c 2005-10-14 01:44:46.000000000 -0700 @@ -677,8 +677,7 @@ struct dvb_frontend* mt312_attach(const return &state->frontend; error: - if (state) - kfree(state); + kfree(state); return NULL; } diff -puN drivers/media/dvb/frontends/or51132.c~kfree-cleanup-drivers-media drivers/media/dvb/frontends/or51132.c --- devel/drivers/media/dvb/frontends/or51132.c~kfree-cleanup-drivers-media 2005-10-14 01:44:46.000000000 -0700 +++ devel-akpm/drivers/media/dvb/frontends/or51132.c 2005-10-14 01:44:46.000000000 -0700 @@ -577,8 +577,7 @@ struct dvb_frontend* or51132_attach(cons return &state->frontend; error: - if (state) - kfree(state); + kfree(state); return NULL; } diff -puN drivers/media/video/arv.c~kfree-cleanup-drivers-media drivers/media/video/arv.c --- devel/drivers/media/video/arv.c~kfree-cleanup-drivers-media 2005-10-14 01:44:46.000000000 -0700 +++ devel-akpm/drivers/media/video/arv.c 2005-10-14 01:44:46.000000000 -0700 @@ -865,10 +865,8 @@ out_dev: out_irq: #endif - for (i = 0; i < MAX_AR_HEIGHT; i++) { - if (ar->frame[i]) - kfree(ar->frame[i]); - } + for (i = 0; i < MAX_AR_HEIGHT; i++) + kfree(ar->frame[i]); out_line_buff: #if USE_INT @@ -899,10 +897,8 @@ static void __exit ar_cleanup_module(voi #if USE_INT free_irq(M32R_IRQ_INT3, ar); #endif - for (i = 0; i < MAX_AR_HEIGHT; i++) { - if (ar->frame[i]) - kfree(ar->frame[i]); - } + for (i = 0; i < MAX_AR_HEIGHT; i++) + kfree(ar->frame[i]); #if USE_INT kfree(ar->line_buff); #endif diff -puN drivers/media/video/bttv-driver.c~kfree-cleanup-drivers-media drivers/media/video/bttv-driver.c --- devel/drivers/media/video/bttv-driver.c~kfree-cleanup-drivers-media 2005-10-14 01:44:46.000000000 -0700 +++ devel-akpm/drivers/media/video/bttv-driver.c 2005-10-14 01:44:46.000000000 -0700 @@ -1951,8 +1951,7 @@ static int setup_window(struct bttv_fh * } down(&fh->cap.lock); - if (fh->ov.clips) - kfree(fh->ov.clips); + kfree(fh->ov.clips); fh->ov.clips = clips; fh->ov.nclips = n; @@ -2723,8 +2722,7 @@ static int bttv_do_ioctl(struct inode *i fh->ov.w.height = fb->fmt.height; btv->init.ov.w.width = fb->fmt.width; btv->init.ov.w.height = fb->fmt.height; - if (fh->ov.clips) - kfree(fh->ov.clips); + kfree(fh->ov.clips); fh->ov.clips = NULL; fh->ov.nclips = 0; diff -puN drivers/media/video/v4l1-compat.c~kfree-cleanup-drivers-media drivers/media/video/v4l1-compat.c --- devel/drivers/media/video/v4l1-compat.c~kfree-cleanup-drivers-media 2005-10-14 01:44:46.000000000 -0700 +++ devel-akpm/drivers/media/video/v4l1-compat.c 2005-10-14 01:44:46.000000000 -0700 @@ -1006,10 +1006,8 @@ v4l_compat_translate_ioctl(struct inode break; } - if (cap2) - kfree(cap2); - if (fmt2) - kfree(fmt2); + kfree(cap2); + kfree(fmt2); return err; } diff -puN drivers/media/video/videocodec.c~kfree-cleanup-drivers-media drivers/media/video/videocodec.c --- devel/drivers/media/video/videocodec.c~kfree-cleanup-drivers-media 2005-10-14 01:44:46.000000000 -0700 +++ devel-akpm/drivers/media/video/videocodec.c 2005-10-14 01:44:46.000000000 -0700 @@ -353,8 +353,7 @@ videocodec_build_table (void) dprintk(3, "videocodec_build table: %d entries, %d bytes\n", i, size); - if (videocodec_buf) - kfree(videocodec_buf); + kfree(videocodec_buf); videocodec_buf = (char *) kmalloc(size, GFP_KERNEL); i = 0; @@ -471,8 +470,7 @@ videocodec_exit (void) { #ifdef CONFIG_PROC_FS remove_proc_entry("videocodecs", NULL); - if (videocodec_buf) - kfree(videocodec_buf); + kfree(videocodec_buf); #endif } diff -puN drivers/media/video/videodev.c~kfree-cleanup-drivers-media drivers/media/video/videodev.c --- devel/drivers/media/video/videodev.c~kfree-cleanup-drivers-media 2005-10-14 01:44:46.000000000 -0700 +++ devel-akpm/drivers/media/video/videodev.c 2005-10-14 01:44:46.000000000 -0700 @@ -215,8 +215,7 @@ video_usercopy(struct inode *inode, stru } out: - if (mbuf) - kfree(mbuf); + kfree(mbuf); return err; } diff -puN drivers/media/video/zoran_card.c~kfree-cleanup-drivers-media drivers/media/video/zoran_card.c --- devel/drivers/media/video/zoran_card.c~kfree-cleanup-drivers-media 2005-10-14 01:44:46.000000000 -0700 +++ devel-akpm/drivers/media/video/zoran_card.c 2005-10-14 01:44:46.000000000 -0700 @@ -1057,10 +1057,8 @@ zr36057_init (struct zoran *zr) KERN_ERR "%s: zr36057_init() - kmalloc (STAT_COM) failed\n", ZR_DEVNAME(zr)); - if (vdev) - kfree(vdev); - if (mem) - kfree((void *)mem); + kfree(vdev); + kfree((void *)mem); return -ENOMEM; } memset((void *) mem, 0, mem_needed); @@ -1105,15 +1103,15 @@ zoran_release (struct zoran *zr) /* unregister videocodec bus */ if (zr->codec) { struct videocodec_master *master = zr->codec->master_data; + videocodec_detach(zr->codec); - if (master) - kfree(master); + kfree(master); } if (zr->vfe) { struct videocodec_master *master = zr->vfe->master_data; + videocodec_detach(zr->vfe); - if (master) - kfree(master); + kfree(master); } /* unregister i2c bus */ _