diff options
| author | Jesper Juhl <jesper.juhl@gmail.com> | 2005-09-10 00:26:54 -0700 | 
|---|---|---|
| committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-09-10 10:06:30 -0700 | 
| commit | f9101210e7aa72daf92722d451a2f7e3af5f781f (patch) | |
| tree | 9554007e19387f2d05352ab03332be50c5b95f5b | |
| parent | 887c27f369abc458556a5ce8ab22ddd498474307 (diff) | |
| download | olio-linux-3.10-f9101210e7aa72daf92722d451a2f7e3af5f781f.tar.xz olio-linux-3.10-f9101210e7aa72daf92722d451a2f7e3af5f781f.zip  | |
[PATCH] vfree and kfree cleanup in drivers/
This patch does a full cleanup of 'NULL checks before vfree', and a partial
cleanup of calls to kfree for all of drivers/ - the kfree bit is partial in
that I only did the files that also had vfree calls in them.  The patch
also gets rid of some redundant (void *) casts of pointers being passed to
[vk]free, and a some tiny whitespace corrections also crept in.
Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| -rw-r--r-- | drivers/block/z2ram.c | 2 | ||||
| -rw-r--r-- | drivers/cdrom/sbpcd.c | 6 | ||||
| -rw-r--r-- | drivers/char/agp/backend.c | 7 | ||||
| -rw-r--r-- | drivers/isdn/i4l/isdn_bsdcomp.c | 14 | ||||
| -rw-r--r-- | drivers/isdn/i4l/isdn_common.c | 3 | ||||
| -rw-r--r-- | drivers/md/dm-exception-store.c | 9 | ||||
| -rw-r--r-- | drivers/media/common/saa7146_core.c | 6 | ||||
| -rw-r--r-- | drivers/media/video/cpia_usb.c | 30 | ||||
| -rw-r--r-- | drivers/media/video/stradis.c | 32 | ||||
| -rw-r--r-- | drivers/media/video/video-buf.c | 8 | ||||
| -rw-r--r-- | drivers/media/video/zoran_driver.c | 2 | ||||
| -rw-r--r-- | drivers/media/video/zr36120.c | 6 | ||||
| -rw-r--r-- | drivers/mtd/devices/mtdram.c | 3 | ||||
| -rw-r--r-- | drivers/mtd/ftl.c | 11 | ||||
| -rw-r--r-- | drivers/net/bsd_comp.c | 28 | ||||
| -rw-r--r-- | drivers/scsi/53c7xx.c | 4 | ||||
| -rw-r--r-- | drivers/scsi/cpqfcTSinit.c | 3 | ||||
| -rw-r--r-- | drivers/scsi/osst.c | 13 | ||||
| -rw-r--r-- | drivers/usb/media/stv680.c | 26 | ||||
| -rw-r--r-- | drivers/video/vgastate.c | 15 | 
20 files changed, 86 insertions, 142 deletions
diff --git a/drivers/block/z2ram.c b/drivers/block/z2ram.c index 007f6a66243..bb5e8d665a2 100644 --- a/drivers/block/z2ram.c +++ b/drivers/block/z2ram.c @@ -296,7 +296,7 @@ z2_open( struct inode *inode, struct file *filp )      return 0;  err_out_kfree: -    kfree( z2ram_map ); +    kfree(z2ram_map);  err_out:      return rc;  } diff --git a/drivers/cdrom/sbpcd.c b/drivers/cdrom/sbpcd.c index 30a89775536..0b7d7412c4a 100644 --- a/drivers/cdrom/sbpcd.c +++ b/drivers/cdrom/sbpcd.c @@ -4216,7 +4216,8 @@ static int sbpcd_dev_ioctl(struct cdrom_device_info *cdi, u_int cmd,  	case CDROMAUDIOBUFSIZ: /* configure the audio buffer size */  		msg(DBG_IOC,"ioctl: CDROMAUDIOBUFSIZ entered.\n"); -		if (current_drive->sbp_audsiz>0) vfree(current_drive->aud_buf); +		if (current_drive->sbp_audsiz>0) +			vfree(current_drive->aud_buf);  		current_drive->aud_buf=NULL;  		current_drive->sbp_audsiz=arg; @@ -5910,7 +5911,8 @@ static void sbpcd_exit(void)  		put_disk(D_S[j].disk);  		devfs_remove("sbp/c0t%d", j);  		vfree(D_S[j].sbp_buf); -		if (D_S[j].sbp_audsiz>0) vfree(D_S[j].aud_buf); +		if (D_S[j].sbp_audsiz>0) +			vfree(D_S[j].aud_buf);  		if ((unregister_cdrom(D_S[j].sbpcd_infop) == -EINVAL))  		{  			msg(DBG_INF, "What's that: can't unregister info %s.\n", major_name); diff --git a/drivers/char/agp/backend.c b/drivers/char/agp/backend.c index 4d4e602fdc7..82b43c541c8 100644 --- a/drivers/char/agp/backend.c +++ b/drivers/char/agp/backend.c @@ -206,10 +206,9 @@ static void agp_backend_cleanup(struct agp_bridge_data *bridge)  		bridge->driver->cleanup();  	if (bridge->driver->free_gatt_table)  		bridge->driver->free_gatt_table(bridge); -	if (bridge->key_list) { -		vfree(bridge->key_list); -		bridge->key_list = NULL; -	} + +	vfree(bridge->key_list); +	bridge->key_list = NULL;  	if (bridge->driver->agp_destroy_page &&  	    bridge->driver->needs_scratch_page) diff --git a/drivers/isdn/i4l/isdn_bsdcomp.c b/drivers/isdn/i4l/isdn_bsdcomp.c index baf4bcad9bf..0afe442db3b 100644 --- a/drivers/isdn/i4l/isdn_bsdcomp.c +++ b/drivers/isdn/i4l/isdn_bsdcomp.c @@ -283,23 +283,19 @@ static void bsd_free (void *state)  		/*  		 * Release the dictionary  		 */ -		if (db->dict) { -			vfree (db->dict); -			db->dict = NULL; -		} +		vfree(db->dict); +		db->dict = NULL;  		/*  		 * Release the string buffer  		 */ -		if (db->lens) { -			vfree (db->lens); -			db->lens = NULL; -		} +		vfree(db->lens); +		db->lens = NULL;  		/*  		 * Finally release the structure itself.  		 */ -		kfree (db); +		kfree(db);  	}  } diff --git a/drivers/isdn/i4l/isdn_common.c b/drivers/isdn/i4l/isdn_common.c index eebcb0b97f0..8a7d54a5c97 100644 --- a/drivers/isdn/i4l/isdn_common.c +++ b/drivers/isdn/i4l/isdn_common.c @@ -1953,7 +1953,8 @@ isdn_add_channels(isdn_driver_t *d, int drvidx, int n, int adding)  		kfree(d->rcvcount);  	if (!(d->rcvcount = kmalloc(sizeof(int) * m, GFP_ATOMIC))) {  		printk(KERN_WARNING "register_isdn: Could not alloc rcvcount\n"); -		if (!adding) kfree(d->rcverr); +		if (!adding) +			kfree(d->rcverr);  		return -1;  	}  	memset((char *) d->rcvcount, 0, sizeof(int) * m); diff --git a/drivers/md/dm-exception-store.c b/drivers/md/dm-exception-store.c index 17212b4201a..cc07bbebbb1 100644 --- a/drivers/md/dm-exception-store.c +++ b/drivers/md/dm-exception-store.c @@ -568,12 +568,9 @@ int dm_create_persistent(struct exception_store *store, uint32_t chunk_size)        bad:  	dm_io_put(sectors_to_pages(chunk_size)); -	if (ps) { -		if (ps->area) -			free_area(ps); - -		kfree(ps); -	} +	if (ps && ps->area) +		free_area(ps); +	kfree(ps);  	return r;  } diff --git a/drivers/media/common/saa7146_core.c b/drivers/media/common/saa7146_core.c index cd5828b5e9e..206cc2f61f2 100644 --- a/drivers/media/common/saa7146_core.c +++ b/drivers/media/common/saa7146_core.c @@ -168,10 +168,8 @@ void saa7146_pgtable_free(struct pci_dev *pci, struct saa7146_pgtable *pt)  		return;  	pci_free_consistent(pci, pt->size, pt->cpu, pt->dma);  	pt->cpu = NULL; -	if (NULL != pt->slist) { -		kfree(pt->slist); -		pt->slist = NULL; -	} +	kfree(pt->slist); +	pt->slist = NULL;  }  int saa7146_pgtable_alloc(struct pci_dev *pci, struct saa7146_pgtable *pt) diff --git a/drivers/media/video/cpia_usb.c b/drivers/media/video/cpia_usb.c index cdda423386c..9774e94d1e7 100644 --- a/drivers/media/video/cpia_usb.c +++ b/drivers/media/video/cpia_usb.c @@ -445,10 +445,8 @@ static void cpia_usb_free_resources(struct usb_cpia *ucpia, int try)  		ucpia->sbuf[1].urb = NULL;  	} -	if (ucpia->sbuf[1].data) { -		kfree(ucpia->sbuf[1].data); -		ucpia->sbuf[1].data = NULL; -	} +	kfree(ucpia->sbuf[1].data); +	ucpia->sbuf[1].data = NULL;  	if (ucpia->sbuf[0].urb) {  		usb_kill_urb(ucpia->sbuf[0].urb); @@ -456,10 +454,8 @@ static void cpia_usb_free_resources(struct usb_cpia *ucpia, int try)  		ucpia->sbuf[0].urb = NULL;  	} -	if (ucpia->sbuf[0].data) { -		kfree(ucpia->sbuf[0].data); -		ucpia->sbuf[0].data = NULL; -	} +	kfree(ucpia->sbuf[0].data); +	ucpia->sbuf[0].data = NULL;  }  static int cpia_usb_close(void *privdata) @@ -623,20 +619,14 @@ static void cpia_disconnect(struct usb_interface *intf)  	ucpia->curbuff = ucpia->workbuff = NULL; -	if (ucpia->buffers[2]) { -		vfree(ucpia->buffers[2]); -		ucpia->buffers[2] = NULL; -	} +	vfree(ucpia->buffers[2]); +	ucpia->buffers[2] = NULL; -	if (ucpia->buffers[1]) { -		vfree(ucpia->buffers[1]); -		ucpia->buffers[1] = NULL; -	} +	vfree(ucpia->buffers[1]); +	ucpia->buffers[1] = NULL; -	if (ucpia->buffers[0]) { -		vfree(ucpia->buffers[0]); -		ucpia->buffers[0] = NULL; -	} +	vfree(ucpia->buffers[0]); +	ucpia->buffers[0] = NULL;  	cam->lowlevel_data = NULL;  	kfree(ucpia); diff --git a/drivers/media/video/stradis.c b/drivers/media/video/stradis.c index b5774357108..d4497dbae05 100644 --- a/drivers/media/video/stradis.c +++ b/drivers/media/video/stradis.c @@ -2184,30 +2184,18 @@ static void release_saa(void)  		vfree(saa->vidbuf);  		vfree(saa->audbuf);  		vfree(saa->osdbuf); -		if (saa->dmavid2) -			kfree((void *) saa->dmavid2); +		kfree(saa->dmavid2);  		saa->audbuf = saa->vidbuf = saa->osdbuf = NULL;  		saa->dmavid2 = NULL; -		if (saa->dmadebi) -			kfree((void *) saa->dmadebi); -		if (saa->dmavid1) -			kfree((void *) saa->dmavid1); -		if (saa->dmavid2) -			kfree((void *) saa->dmavid2); -		if (saa->dmavid3) -			kfree((void *) saa->dmavid3); -		if (saa->dmaa1in) -			kfree((void *) saa->dmaa1in); -		if (saa->dmaa1out) -			kfree((void *) saa->dmaa1out); -		if (saa->dmaa2in) -			kfree((void *) saa->dmaa2in); -		if (saa->dmaa2out) -			kfree((void *) saa->dmaa2out); -		if (saa->dmaRPS1) -			kfree((void *) saa->dmaRPS1); -		if (saa->dmaRPS2) -			kfree((void *) saa->dmaRPS2); +		kfree(saa->dmadebi); +		kfree(saa->dmavid1); +		kfree(saa->dmavid3); +		kfree(saa->dmaa1in); +		kfree(saa->dmaa1out); +		kfree(saa->dmaa2in); +		kfree(saa->dmaa2out); +		kfree(saa->dmaRPS1); +		kfree(saa->dmaRPS2);  		free_irq(saa->irq, saa);  		if (saa->saa7146_mem)  			iounmap(saa->saa7146_mem); diff --git a/drivers/media/video/video-buf.c b/drivers/media/video/video-buf.c index 97354f253a8..574b8e36f3c 100644 --- a/drivers/media/video/video-buf.c +++ b/drivers/media/video/video-buf.c @@ -267,10 +267,10 @@ int videobuf_dma_free(struct videobuf_dmabuf *dma)  		kfree(dma->pages);  		dma->pages = NULL;  	} -	if (dma->vmalloc) { -		vfree(dma->vmalloc); -		dma->vmalloc = NULL; -	} + +	vfree(dma->vmalloc); +	dma->vmalloc = NULL; +  	if (dma->bus_addr) {  		dma->bus_addr = 0;  	} diff --git a/drivers/media/video/zoran_driver.c b/drivers/media/video/zoran_driver.c index ba838a42ec8..53adeb70f2c 100644 --- a/drivers/media/video/zoran_driver.c +++ b/drivers/media/video/zoran_driver.c @@ -650,7 +650,7 @@ jpg_fbuffer_free (struct file *file)  				     off += PAGE_SIZE)  					ClearPageReserved(MAP_NR  							  (mem + off)); -				kfree((void *) mem); +				kfree(mem);  				fh->jpg_buffers.buffer[i].frag_tab[0] = 0;  				fh->jpg_buffers.buffer[i].frag_tab[1] = 0;  			} diff --git a/drivers/media/video/zr36120.c b/drivers/media/video/zr36120.c index c33533155cc..07286816d7d 100644 --- a/drivers/media/video/zr36120.c +++ b/drivers/media/video/zr36120.c @@ -820,11 +820,9 @@ void zoran_close(struct video_device* dev)          msleep(100);			/* Wait 1/10th of a second */  	/* free the allocated framebuffer */ -	if (ztv->fbuffer) -		bfree( ztv->fbuffer, ZORAN_MAX_FBUFSIZE ); +	bfree(ztv->fbuffer, ZORAN_MAX_FBUFSIZE);  	ztv->fbuffer = 0; -	if (ztv->overinfo.overlay) -		kfree( ztv->overinfo.overlay ); +	kfree(ztv->overinfo.overlay);  	ztv->overinfo.overlay = 0;  } diff --git a/drivers/mtd/devices/mtdram.c b/drivers/mtd/devices/mtdram.c index bb713fed2f3..1443117fd8f 100644 --- a/drivers/mtd/devices/mtdram.c +++ b/drivers/mtd/devices/mtdram.c @@ -91,8 +91,7 @@ static void __exit cleanup_mtdram(void)  {  	if (mtd_info) {  		del_mtd_device(mtd_info); -		if (mtd_info->priv) -			vfree(mtd_info->priv); +		vfree(mtd_info->priv);  		kfree(mtd_info);  	}  } diff --git a/drivers/mtd/ftl.c b/drivers/mtd/ftl.c index d9ab60b36fd..d32c1b3a8ce 100644 --- a/drivers/mtd/ftl.c +++ b/drivers/mtd/ftl.c @@ -1017,27 +1017,16 @@ static int ftl_writesect(struct mtd_blktrans_dev *dev,  void ftl_freepart(partition_t *part)  { -    if (part->VirtualBlockMap) {  	vfree(part->VirtualBlockMap);  	part->VirtualBlockMap = NULL; -    } -    if (part->VirtualPageMap) {  	kfree(part->VirtualPageMap);  	part->VirtualPageMap = NULL; -    } -    if (part->EUNInfo) {  	kfree(part->EUNInfo);  	part->EUNInfo = NULL; -    } -    if (part->XferInfo) {  	kfree(part->XferInfo);  	part->XferInfo = NULL; -    } -    if (part->bam_cache) {  	kfree(part->bam_cache);  	part->bam_cache = NULL; -    } -      } /* ftl_freepart */  static void ftl_add_mtd(struct mtd_blktrans_ops *tr, struct mtd_info *mtd) diff --git a/drivers/net/bsd_comp.c b/drivers/net/bsd_comp.c index 3d88ad622bd..fb4098ed469 100644 --- a/drivers/net/bsd_comp.c +++ b/drivers/net/bsd_comp.c @@ -323,33 +323,27 @@ static void bsd_reset (void *state)   */  static void bsd_free (void *state) -  { -    struct bsd_db *db = (struct bsd_db *) state; +{ +	struct bsd_db *db = state; -    if (db) -      { +	if (!db) +		return; +  /*   * Release the dictionary   */ -	if (db->dict) -	  { -	    vfree (db->dict); -	    db->dict = NULL; -	  } +	vfree(db->dict); +	db->dict = NULL;  /*   * Release the string buffer   */ -	if (db->lens) -	  { -	    vfree (db->lens); -	    db->lens = NULL; -	  } +	vfree(db->lens); +	db->lens = NULL;  /*   * Finally release the structure itself.   */ -	kfree (db); -      } -  } +	kfree(db); +}  /*   * Allocate space for a (de) compressor. diff --git a/drivers/scsi/53c7xx.c b/drivers/scsi/53c7xx.c index 2341d27ceed..7a33c708f5b 100644 --- a/drivers/scsi/53c7xx.c +++ b/drivers/scsi/53c7xx.c @@ -6090,8 +6090,8 @@ NCR53c7x0_release(struct Scsi_Host *host) {      if (hostdata->num_cmds)  	printk ("scsi%d : leaked %d NCR53c7x0_cmd structures\n",  	    host->host_no, hostdata->num_cmds); -    if (hostdata->events)  -	vfree ((void *)hostdata->events); + +    vfree(hostdata->events);      /* XXX This assumes default cache mode to be IOMAP_FULL_CACHING, which       * XXX may be invalid (CONFIG_060_WRITETHROUGH) diff --git a/drivers/scsi/cpqfcTSinit.c b/drivers/scsi/cpqfcTSinit.c index d72be0ce89c..3fda8d455c5 100644 --- a/drivers/scsi/cpqfcTSinit.c +++ b/drivers/scsi/cpqfcTSinit.c @@ -691,8 +691,7 @@ int cpqfcTS_ioctl( struct scsi_device *ScsiDev, int Cmnd, void *arg)          if(  copy_to_user( vendor_cmd->bufp, buf, vendor_cmd->len))  		result = -EFAULT; -        if( buf)  -	  kfree( buf); +	kfree(buf);          return result;        } diff --git a/drivers/scsi/osst.c b/drivers/scsi/osst.c index 89a4a0615c2..3f2f2464fa6 100644 --- a/drivers/scsi/osst.c +++ b/drivers/scsi/osst.c @@ -1377,7 +1377,7 @@ static int osst_read_back_buffer_and_rewrite(struct osst_tape * STp, struct scsi  		if ((STp->buffer)->syscall_result || !SRpnt) {  			printk(KERN_ERR "%s:E: Failed to read frame back from OnStream buffer\n", name); -			vfree((void *)buffer); +			vfree(buffer);  			*aSRpnt = SRpnt;  			return (-EIO);  		} @@ -1419,7 +1419,7 @@ static int osst_read_back_buffer_and_rewrite(struct osst_tape * STp, struct scsi  			if (new_frame > frame + 1000) {  				printk(KERN_ERR "%s:E: Failed to find writable tape media\n", name); -				vfree((void *)buffer); +				vfree(buffer);  				return (-EIO);  			}  			if ( i >= nframes + pending ) break; @@ -1500,7 +1500,7 @@ static int osst_read_back_buffer_and_rewrite(struct osst_tape * STp, struct scsi  			     SRpnt->sr_sense_buffer[12]         ==  0 &&  			     SRpnt->sr_sense_buffer[13]         ==  2) {  				printk(KERN_ERR "%s:E: Volume overflow in write error recovery\n", name); -				vfree((void *)buffer); +				vfree(buffer);  				return (-EIO);			/* hit end of tape = fail */  			}  			i = ((SRpnt->sr_sense_buffer[3] << 24) | @@ -1525,7 +1525,7 @@ static int osst_read_back_buffer_and_rewrite(struct osst_tape * STp, struct scsi  	}  	if (!pending)  		osst_copy_to_buffer(STp->buffer, p);	/* so buffer content == at entry in all cases */ -	vfree((void *)buffer); +	vfree(buffer);  	return 0;  } @@ -5852,7 +5852,7 @@ static int osst_remove(struct device *dev)  			os_scsi_tapes[i] = NULL;  			osst_nr_dev--;  			write_unlock(&os_scsi_tapes_lock); -			if (tpnt->header_cache != NULL) vfree(tpnt->header_cache); +			vfree(tpnt->header_cache);  			if (tpnt->buffer) {  				normalize_buffer(tpnt->buffer);  				kfree(tpnt->buffer); @@ -5896,8 +5896,7 @@ static void __exit exit_osst (void)  		for (i=0; i < osst_max_dev; ++i) {  			if (!(STp = os_scsi_tapes[i])) continue;  			/* This is defensive, supposed to happen during detach */ -			if (STp->header_cache) -				vfree(STp->header_cache); +			vfree(STp->header_cache);  			if (STp->buffer) {  				normalize_buffer(STp->buffer);  				kfree(STp->buffer); diff --git a/drivers/usb/media/stv680.c b/drivers/usb/media/stv680.c index 7398a7f19c1..0fd0fa9fec2 100644 --- a/drivers/usb/media/stv680.c +++ b/drivers/usb/media/stv680.c @@ -260,7 +260,7 @@ static int stv_stop_video (struct usb_stv *dev)  			PDEBUG (0, "STV(i): Camera set to original resolution");  	}  	/* origMode */ -	kfree (buf); +	kfree(buf);  	return i;  } @@ -276,7 +276,7 @@ static int stv_set_video_mode (struct usb_stv *dev)  	}  	if ((i = stv_set_config (dev, 1, 0, 0)) < 0) { -		kfree (buf); +		kfree(buf);  		return i;  	} @@ -301,13 +301,13 @@ static int stv_set_video_mode (struct usb_stv *dev)  	goto exit;  error: -	kfree (buf); +	kfree(buf);  	if (stop_video == 1)  		stv_stop_video (dev);  	return -1;  exit: -	kfree (buf); +	kfree(buf);  	return 0;  } @@ -327,7 +327,7 @@ static int stv_init (struct usb_stv *stv680)  	/* set config 1, interface 0, alternate 0 */  	if ((i = stv_set_config (stv680, 1, 0, 0)) < 0) { -		kfree (buffer); +		kfree(buffer);  		PDEBUG (0, "STV(e): set config 1,0,0 failed");  		return -1;  	} @@ -435,11 +435,11 @@ static int stv_init (struct usb_stv *stv680)  error:  	i = stv_sndctrl (0, stv680, 0x80, 0, buffer, 0x02);	/* Get Last Error */  	PDEBUG (1, "STV(i): last error: %i,  command = 0x%x", buffer[0], buffer[1]); -	kfree (buffer); +	kfree(buffer);  	return -1;  exit: -	kfree (buffer); +	kfree(buffer);  	/* video = 320x240, 352x288 */  	if (stv680->CIF == 1) { @@ -708,10 +708,10 @@ static int stv680_stop_stream (struct usb_stv *stv680)  			usb_kill_urb (stv680->urb[i]);  			usb_free_urb (stv680->urb[i]);  			stv680->urb[i] = NULL; -			kfree (stv680->sbuf[i].data); +			kfree(stv680->sbuf[i].data);  		}  	for (i = 0; i < STV680_NUMSCRATCH; i++) { -		kfree (stv680->scratch[i].data); +		kfree(stv680->scratch[i].data);  		stv680->scratch[i].data = NULL;  	} @@ -1068,7 +1068,7 @@ static int stv_close (struct inode *inode, struct file *file)  	stv680->user = 0;  	if (stv680->removed) { -		kfree (stv680); +		kfree(stv680);  		stv680 = NULL;  		PDEBUG (0, "STV(i): device unregistered");  	} @@ -1445,14 +1445,14 @@ static inline void usb_stv680_remove_disconnected (struct usb_stv *stv680)  			usb_kill_urb (stv680->urb[i]);  			usb_free_urb (stv680->urb[i]);  			stv680->urb[i] = NULL; -			kfree (stv680->sbuf[i].data); +			kfree(stv680->sbuf[i].data);  		}  	for (i = 0; i < STV680_NUMSCRATCH; i++) -		kfree (stv680->scratch[i].data); +		kfree(stv680->scratch[i].data);  	PDEBUG (0, "STV(i): %s disconnected", stv680->camera_name);  	/* Free the memory */ -	kfree (stv680); +	kfree(stv680);  }  static void stv680_disconnect (struct usb_interface *intf) diff --git a/drivers/video/vgastate.c b/drivers/video/vgastate.c index 0ea62d8bc70..ca92940f394 100644 --- a/drivers/video/vgastate.c +++ b/drivers/video/vgastate.c @@ -342,16 +342,11 @@ static void vga_cleanup(struct vgastate *state)  	if (state->vidstate != NULL) {  		struct regstate *saved = (struct regstate *) state->vidstate; -		if (saved->vga_font0)  -			vfree(saved->vga_font0); -		if (saved->vga_font1)  -			vfree(saved->vga_font1); -		if (saved->vga_text) -			vfree(saved->vga_text); -		if (saved->vga_cmap) -			vfree(saved->vga_cmap); -		if (saved->attr) -			vfree(saved->attr); +		vfree(saved->vga_font0); +		vfree(saved->vga_font1); +		vfree(saved->vga_text); +		vfree(saved->vga_cmap); +		vfree(saved->attr);  		kfree(saved);  		state->vidstate = NULL;  	}  |