From: Jesper Juhl This is the drivers/net/ part of the big kfree cleanup patch. Remove pointless checks for NULL prior to calling kfree() in drivers/net/. Signed-off-by: Jesper Juhl Cc: Jeff Garzik Signed-off-by: Andrew Morton --- drivers/net/acenic.c | 6 +-- drivers/net/au1000_eth.c | 6 +-- drivers/net/b44.c | 12 ++----- drivers/net/bmac.c | 6 +-- drivers/net/bnx2.c | 12 ++----- drivers/net/e1000/e1000_ethtool.c | 7 +--- drivers/net/hamradio/mkiss.c | 6 +-- drivers/net/ibmveth.c | 19 +++-------- drivers/net/irda/donauboe.c | 6 +-- drivers/net/irda/irda-usb.c | 6 +-- drivers/net/irda/irport.c | 3 - drivers/net/irda/sir_dev.c | 3 - drivers/net/irda/vlsi_ir.c | 3 - drivers/net/mace.c | 6 +-- drivers/net/ni65.c | 9 +---- drivers/net/rrunner.c | 6 +-- drivers/net/s2io.c | 3 - drivers/net/saa9730.c | 8 +--- drivers/net/sb1250-mac.c | 12 +------ drivers/net/tg3.c | 6 +-- drivers/net/tulip/de2104x.c | 6 +-- drivers/net/tulip/tulip_core.c | 6 +-- drivers/net/via-velocity.c | 6 +-- drivers/net/wireless/airo.c | 48 +++++++++++------------------ drivers/net/wireless/airo_cs.c | 4 -- drivers/net/wireless/atmel.c | 6 +-- drivers/net/wireless/atmel_cs.c | 3 - drivers/net/wireless/hostap/hostap_ioctl.c | 9 +---- drivers/net/wireless/prism54/islpci_dev.c | 3 - drivers/net/wireless/prism54/oid_mgt.c | 9 ++--- drivers/net/wireless/strip.c | 38 +++++++--------------- include/net/ax25.h | 3 - include/net/netrom.h | 3 - 33 files changed, 97 insertions(+), 192 deletions(-) diff -puN drivers/net/acenic.c~kfree-cleanup-drivers-net drivers/net/acenic.c --- devel/drivers/net/acenic.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/acenic.c 2005-10-20 01:16:52.000000000 -0700 @@ -871,10 +871,8 @@ static void ace_init_cleanup(struct net_ if (ap->info) pci_free_consistent(ap->pdev, sizeof(struct ace_info), ap->info, ap->info_dma); - if (ap->skb) - kfree(ap->skb); - if (ap->trace_buf) - kfree(ap->trace_buf); + kfree(ap->skb); + kfree(ap->trace_buf); if (dev->irq) free_irq(dev->irq, dev); diff -puN drivers/net/au1000_eth.c~kfree-cleanup-drivers-net drivers/net/au1000_eth.c --- devel/drivers/net/au1000_eth.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/au1000_eth.c 2005-10-20 01:16:52.000000000 -0700 @@ -1606,8 +1606,7 @@ err_out: /* here we should have a valid dev plus aup-> register addresses * so we can reset the mac properly.*/ reset_mac(dev); - if (aup->mii) - kfree(aup->mii); + kfree(aup->mii); for (i = 0; i < NUM_RX_DMA; i++) { if (aup->rx_db_inuse[i]) ReleaseDB(aup, aup->rx_db_inuse[i]); @@ -1806,8 +1805,7 @@ static void __exit au1000_cleanup_module if (dev) { aup = (struct au1000_private *) dev->priv; unregister_netdev(dev); - if (aup->mii) - kfree(aup->mii); + kfree(aup->mii); for (j = 0; j < NUM_RX_DMA; j++) { if (aup->rx_db_inuse[j]) ReleaseDB(aup, aup->rx_db_inuse[j]); diff -puN drivers/net/b44.c~kfree-cleanup-drivers-net drivers/net/b44.c --- devel/drivers/net/b44.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/b44.c 2005-10-20 01:16:52.000000000 -0700 @@ -1130,14 +1130,10 @@ static void b44_init_rings(struct b44 *b */ static void b44_free_consistent(struct b44 *bp) { - if (bp->rx_buffers) { - kfree(bp->rx_buffers); - bp->rx_buffers = NULL; - } - if (bp->tx_buffers) { - kfree(bp->tx_buffers); - bp->tx_buffers = NULL; - } + kfree(bp->rx_buffers); + bp->rx_buffers = NULL; + kfree(bp->tx_buffers); + bp->tx_buffers = NULL; if (bp->rx_ring) { if (bp->flags & B44_FLAG_RX_RING_HACK) { dma_unmap_single(&bp->pdev->dev, bp->rx_ring_dma, diff -puN drivers/net/bmac.c~kfree-cleanup-drivers-net drivers/net/bmac.c --- devel/drivers/net/bmac.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/bmac.c 2005-10-20 01:16:52.000000000 -0700 @@ -1690,10 +1690,8 @@ static void __exit bmac_exit(void) { macio_unregister_driver(&bmac_driver); - if (bmac_emergency_rxbuf != NULL) { - kfree(bmac_emergency_rxbuf); - bmac_emergency_rxbuf = NULL; - } + kfree(bmac_emergency_rxbuf); + bmac_emergency_rxbuf = NULL; } MODULE_AUTHOR("Randy Gobbel/Paul Mackerras"); diff -puN drivers/net/bnx2.c~kfree-cleanup-drivers-net drivers/net/bnx2.c --- devel/drivers/net/bnx2.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/bnx2.c 2005-10-20 01:16:52.000000000 -0700 @@ -314,20 +314,16 @@ bnx2_free_mem(struct bnx2 *bp) bp->tx_desc_ring, bp->tx_desc_mapping); bp->tx_desc_ring = NULL; } - if (bp->tx_buf_ring) { - kfree(bp->tx_buf_ring); - bp->tx_buf_ring = NULL; - } + kfree(bp->tx_buf_ring); + bp->tx_buf_ring = NULL; if (bp->rx_desc_ring) { pci_free_consistent(bp->pdev, sizeof(struct rx_bd) * RX_DESC_CNT, bp->rx_desc_ring, bp->rx_desc_mapping); bp->rx_desc_ring = NULL; } - if (bp->rx_buf_ring) { - kfree(bp->rx_buf_ring); - bp->rx_buf_ring = NULL; - } + kfree(bp->rx_buf_ring); + bp->rx_buf_ring = NULL; } static int diff -puN drivers/net/e1000/e1000_ethtool.c~kfree-cleanup-drivers-net drivers/net/e1000/e1000_ethtool.c --- devel/drivers/net/e1000/e1000_ethtool.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/e1000/e1000_ethtool.c 2005-10-20 01:16:52.000000000 -0700 @@ -965,11 +965,8 @@ e1000_free_desc_rings(struct e1000_adapt if(rxdr->desc) pci_free_consistent(pdev, rxdr->size, rxdr->desc, rxdr->dma); - if(txdr->buffer_info) - kfree(txdr->buffer_info); - if(rxdr->buffer_info) - kfree(rxdr->buffer_info); - + kfree(txdr->buffer_info); + kfree(rxdr->buffer_info); return; } diff -puN drivers/net/hamradio/mkiss.c~kfree-cleanup-drivers-net drivers/net/hamradio/mkiss.c --- devel/drivers/net/hamradio/mkiss.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/hamradio/mkiss.c 2005-10-20 01:16:52.000000000 -0700 @@ -390,10 +390,8 @@ static void ax_changedmtu(struct mkiss * "MTU change cancelled.\n", ax->dev->name); dev->mtu = ax->mtu; - if (xbuff != NULL) - kfree(xbuff); - if (rbuff != NULL) - kfree(rbuff); + kfree(xbuff); + kfree(rbuff); return; } diff -puN drivers/net/ibmveth.c~kfree-cleanup-drivers-net drivers/net/ibmveth.c --- devel/drivers/net/ibmveth.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/ibmveth.c 2005-10-20 01:16:52.000000000 -0700 @@ -293,10 +293,8 @@ static void ibmveth_free_buffer_pool(str { int i; - if(pool->free_map) { - kfree(pool->free_map); - pool->free_map = NULL; - } + kfree(pool->free_map); + pool->free_map = NULL; if(pool->skbuff && pool->dma_addr) { for(i = 0; i < pool->size; ++i) { @@ -312,15 +310,10 @@ static void ibmveth_free_buffer_pool(str } } - if(pool->dma_addr) { - kfree(pool->dma_addr); - pool->dma_addr = NULL; - } - - if(pool->skbuff) { - kfree(pool->skbuff); - pool->skbuff = NULL; - } + kfree(pool->dma_addr); + pool->dma_addr = NULL; + kfree(pool->skbuff); + pool->skbuff = NULL; } /* remove a buffer from a pool */ diff -puN drivers/net/irda/donauboe.c~kfree-cleanup-drivers-net drivers/net/irda/donauboe.c --- devel/drivers/net/irda/donauboe.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/irda/donauboe.c 2005-10-20 01:16:52.000000000 -0700 @@ -1695,11 +1695,9 @@ toshoboe_open (struct pci_dev *pci_dev, freebufs: for (i = 0; i < TX_SLOTS; ++i) - if (self->tx_bufs[i]) - kfree (self->tx_bufs[i]); + kfree (self->tx_bufs[i]); for (i = 0; i < RX_SLOTS; ++i) - if (self->rx_bufs[i]) - kfree (self->rx_bufs[i]); + kfree (self->rx_bufs[i]); kfree(self->ringbuf); freeregion: diff -puN drivers/net/irda/irda-usb.c~kfree-cleanup-drivers-net drivers/net/irda/irda-usb.c --- devel/drivers/net/irda/irda-usb.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/irda/irda-usb.c 2005-10-20 01:16:52.000000000 -0700 @@ -1168,10 +1168,8 @@ static inline void irda_usb_close(struct unregister_netdev(self->netdev); /* Remove the speed buffer */ - if (self->speed_buff != NULL) { - kfree(self->speed_buff); - self->speed_buff = NULL; - } + kfree(self->speed_buff); + self->speed_buff = NULL; } /********************** USB CONFIG SUBROUTINES **********************/ diff -puN drivers/net/irda/irport.c~kfree-cleanup-drivers-net drivers/net/irda/irport.c --- devel/drivers/net/irda/irport.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/irda/irport.c 2005-10-20 01:16:52.000000000 -0700 @@ -235,8 +235,7 @@ static int irport_close(struct irport_cb __FUNCTION__, self->io.sir_base); release_region(self->io.sir_base, self->io.sir_ext); - if (self->tx_buff.head) - kfree(self->tx_buff.head); + kfree(self->tx_buff.head); if (self->rx_buff.skb) kfree_skb(self->rx_buff.skb); diff -puN drivers/net/irda/sir_dev.c~kfree-cleanup-drivers-net drivers/net/irda/sir_dev.c --- devel/drivers/net/irda/sir_dev.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/irda/sir_dev.c 2005-10-20 01:16:52.000000000 -0700 @@ -490,8 +490,7 @@ static void sirdev_free_buffers(struct s { if (dev->rx_buff.skb) kfree_skb(dev->rx_buff.skb); - if (dev->tx_buff.head) - kfree(dev->tx_buff.head); + kfree(dev->tx_buff.head); dev->rx_buff.head = dev->tx_buff.head = NULL; dev->rx_buff.skb = NULL; } diff -puN drivers/net/irda/vlsi_ir.c~kfree-cleanup-drivers-net drivers/net/irda/vlsi_ir.c --- devel/drivers/net/irda/vlsi_ir.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/irda/vlsi_ir.c 2005-10-20 01:16:52.000000000 -0700 @@ -473,8 +473,7 @@ static int vlsi_free_ring(struct vlsi_ri rd_set_addr_status(rd, 0, 0); if (busaddr) pci_unmap_single(r->pdev, busaddr, r->len, r->dir); - if (rd->buf) - kfree(rd->buf); + kfree(rd->buf); } kfree(r); return 0; diff -puN drivers/net/mace.c~kfree-cleanup-drivers-net drivers/net/mace.c --- devel/drivers/net/mace.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/mace.c 2005-10-20 01:16:52.000000000 -0700 @@ -1036,10 +1036,8 @@ static void __exit mace_cleanup(void) { macio_unregister_driver(&mace_driver); - if (dummy_buf) { - kfree(dummy_buf); - dummy_buf = NULL; - } + kfree(dummy_buf); + dummy_buf = NULL; } MODULE_AUTHOR("Paul Mackerras"); diff -puN drivers/net/ni65.c~kfree-cleanup-drivers-net drivers/net/ni65.c --- devel/drivers/net/ni65.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/ni65.c 2005-10-20 01:16:52.000000000 -0700 @@ -696,8 +696,7 @@ static void ni65_free_buffer(struct priv return; for(i=0;itmdbounce[i]) - kfree(p->tmdbounce[i]); + kfree(p->tmdbounce[i]); #ifdef XMT_VIA_SKB if(p->tmd_skb[i]) dev_kfree_skb(p->tmd_skb[i]); @@ -710,12 +709,10 @@ static void ni65_free_buffer(struct priv if(p->recv_skb[i]) dev_kfree_skb(p->recv_skb[i]); #else - if(p->recvbounce[i]) - kfree(p->recvbounce[i]); + kfree(p->recvbounce[i]); #endif } - if(p->self) - kfree(p->self); + kfree(p->self); } diff -puN drivers/net/rrunner.c~kfree-cleanup-drivers-net drivers/net/rrunner.c --- devel/drivers/net/rrunner.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/rrunner.c 2005-10-20 01:16:52.000000000 -0700 @@ -1710,10 +1710,8 @@ static int rr_ioctl(struct net_device *d error = -EFAULT; } wf_out: - if (oldimage) - kfree(oldimage); - if (image) - kfree(image); + kfree(oldimage); + kfree(image); return error; case SIOCRRID: diff -puN drivers/net/s2io.c~kfree-cleanup-drivers-net drivers/net/s2io.c --- devel/drivers/net/s2io.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/s2io.c 2005-10-20 01:16:52.000000000 -0700 @@ -705,8 +705,7 @@ static void free_shared_mem(struct s2io_ } kfree(mac_control->rings[i].ba[j]); } - if (mac_control->rings[i].ba) - kfree(mac_control->rings[i].ba); + kfree(mac_control->rings[i].ba); } #endif diff -puN drivers/net/saa9730.c~kfree-cleanup-drivers-net drivers/net/saa9730.c --- devel/drivers/net/saa9730.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/saa9730.c 2005-10-20 01:16:52.000000000 -0700 @@ -997,10 +997,7 @@ static void __devexit saa9730_remove_one if (dev) { unregister_netdev(dev); - - if (dev->priv) - kfree(dev->priv); - + kfree(dev->priv); free_netdev(dev); pci_release_regions(pdev); pci_disable_device(pdev); @@ -1096,8 +1093,7 @@ static int lan_saa9730_init(struct net_d return 0; out: - if (dev->priv) - kfree(dev->priv); + kfree(dev->priv); return ret; } diff -puN drivers/net/sb1250-mac.c~kfree-cleanup-drivers-net drivers/net/sb1250-mac.c --- devel/drivers/net/sb1250-mac.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/sb1250-mac.c 2005-10-20 01:16:52.000000000 -0700 @@ -1398,15 +1398,9 @@ static int sbmac_initctx(struct sbmac_so static void sbdma_uninitctx(struct sbmacdma_s *d) { - if (d->sbdma_dscrtable) { - kfree(d->sbdma_dscrtable); - d->sbdma_dscrtable = NULL; - } - - if (d->sbdma_ctxtable) { - kfree(d->sbdma_ctxtable); - d->sbdma_ctxtable = NULL; - } + kfree(d->sbdma_dscrtable); + kfree(d->sbdma_ctxtable); + d->sbdma_dscrtable = d->sbdma_ctxtable = NULL; } diff -puN drivers/net/tg3.c~kfree-cleanup-drivers-net drivers/net/tg3.c --- devel/drivers/net/tg3.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/tg3.c 2005-10-20 01:16:52.000000000 -0700 @@ -3905,10 +3905,8 @@ static void tg3_init_rings(struct tg3 *t */ static void tg3_free_consistent(struct tg3 *tp) { - if (tp->rx_std_buffers) { - kfree(tp->rx_std_buffers); - tp->rx_std_buffers = NULL; - } + kfree(tp->rx_std_buffers); + tp->rx_std_buffers = NULL; if (tp->rx_std) { pci_free_consistent(tp->pdev, TG3_RX_RING_BYTES, tp->rx_std, tp->rx_std_mapping); diff -puN drivers/net/tulip/de2104x.c~kfree-cleanup-drivers-net drivers/net/tulip/de2104x.c --- devel/drivers/net/tulip/de2104x.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/tulip/de2104x.c 2005-10-20 01:16:52.000000000 -0700 @@ -2076,8 +2076,7 @@ static int __init de_init_one (struct pc return 0; err_out_iomap: - if (de->ee_data) - kfree(de->ee_data); + kfree(de->ee_data); iounmap(regs); err_out_res: pci_release_regions(pdev); @@ -2096,8 +2095,7 @@ static void __exit de_remove_one (struct if (!dev) BUG(); unregister_netdev(dev); - if (de->ee_data) - kfree(de->ee_data); + kfree(de->ee_data); iounmap(de->regs); pci_release_regions(pdev); pci_disable_device(pdev); diff -puN drivers/net/tulip/tulip_core.c~kfree-cleanup-drivers-net drivers/net/tulip/tulip_core.c --- devel/drivers/net/tulip/tulip_core.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/tulip/tulip_core.c 2005-10-20 01:16:52.000000000 -0700 @@ -1727,8 +1727,7 @@ err_out_free_ring: tp->rx_ring, tp->rx_ring_dma); err_out_mtable: - if (tp->mtable) - kfree (tp->mtable); + kfree (tp->mtable); pci_iounmap(pdev, ioaddr); err_out_free_res: @@ -1806,8 +1805,7 @@ static void __devexit tulip_remove_one ( sizeof (struct tulip_rx_desc) * RX_RING_SIZE + sizeof (struct tulip_tx_desc) * TX_RING_SIZE, tp->rx_ring, tp->rx_ring_dma); - if (tp->mtable) - kfree (tp->mtable); + kfree (tp->mtable); pci_iounmap(pdev, tp->base_addr); free_netdev (dev); pci_release_regions (pdev); diff -puN drivers/net/via-velocity.c~kfree-cleanup-drivers-net drivers/net/via-velocity.c --- devel/drivers/net/via-velocity.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/via-velocity.c 2005-10-20 01:16:52.000000000 -0700 @@ -1212,10 +1212,8 @@ static void velocity_free_td_ring(struct velocity_free_td_ring_entry(vptr, j, i); } - if (vptr->td_infos[j]) { - kfree(vptr->td_infos[j]); - vptr->td_infos[j] = NULL; - } + kfree(vptr->td_infos[j]); + vptr->td_infos[j] = NULL; } } diff -puN drivers/net/wireless/airo.c~kfree-cleanup-drivers-net drivers/net/wireless/airo.c --- devel/drivers/net/wireless/airo.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/wireless/airo.c 2005-10-20 01:16:52.000000000 -0700 @@ -2380,14 +2380,10 @@ void stop_airo_card( struct net_device * dev_kfree_skb(skb); } - if (ai->flash) - kfree(ai->flash); - if (ai->rssi) - kfree(ai->rssi); - if (ai->APList) - kfree(ai->APList); - if (ai->SSID) - kfree(ai->SSID); + kfree(ai->flash); + kfree(ai->rssi); + kfree(ai->APList); + kfree(ai->SSID); if (freeres) { /* PCMCIA frees this stuff, so only for PCI and ISA */ release_region( dev->base_addr, 64 ); @@ -3625,10 +3621,8 @@ static u16 setup_card(struct airo_info * int rc; memset( &mySsid, 0, sizeof( mySsid ) ); - if (ai->flash) { - kfree (ai->flash); - ai->flash = NULL; - } + kfree (ai->flash); + ai->flash = NULL; /* The NOP is the first step in getting the card going */ cmd.cmd = NOP; @@ -3665,14 +3659,10 @@ static u16 setup_card(struct airo_info * tdsRssiRid rssi_rid; CapabilityRid cap_rid; - if (ai->APList) { - kfree(ai->APList); - ai->APList = NULL; - } - if (ai->SSID) { - kfree(ai->SSID); - ai->SSID = NULL; - } + kfree(ai->APList); + ai->APList = NULL; + kfree(ai->SSID); + ai->SSID = NULL; // general configuration (read/modify/write) status = readConfigRid(ai, lock); if ( status != SUCCESS ) return ERROR; @@ -3686,10 +3676,8 @@ static u16 setup_card(struct airo_info * memcpy(ai->rssi, (u8*)&rssi_rid + 2, 512); /* Skip RID length member */ } else { - if (ai->rssi) { - kfree(ai->rssi); - ai->rssi = NULL; - } + kfree(ai->rssi); + ai->rssi = NULL; if (cap_rid.softCap & 8) ai->config.rmode |= RXMODE_NORMALIZED_RSSI; else @@ -5368,11 +5356,13 @@ static int proc_BSSList_open( struct ino static int proc_close( struct inode *inode, struct file *file ) { - struct proc_data *data = (struct proc_data *)file->private_data; - if ( data->on_close != NULL ) data->on_close( inode, file ); - if ( data->rbuffer ) kfree( data->rbuffer ); - if ( data->wbuffer ) kfree( data->wbuffer ); - kfree( data ); + struct proc_data *data = file->private_data; + + if (data->on_close != NULL) + data->on_close(inode, file); + kfree(data->rbuffer); + kfree(data->wbuffer); + kfree(data); return 0; } diff -puN drivers/net/wireless/airo_cs.c~kfree-cleanup-drivers-net drivers/net/wireless/airo_cs.c --- devel/drivers/net/wireless/airo_cs.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/wireless/airo_cs.c 2005-10-20 01:16:52.000000000 -0700 @@ -258,9 +258,7 @@ static void airo_detach(dev_link_t *link /* Unlink device structure, free pieces */ *linkp = link->next; - if (link->priv) { - kfree(link->priv); - } + kfree(link->priv); kfree(link); } /* airo_detach */ diff -puN drivers/net/wireless/atmel.c~kfree-cleanup-drivers-net drivers/net/wireless/atmel.c --- devel/drivers/net/wireless/atmel.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/wireless/atmel.c 2005-10-20 01:16:52.000000000 -0700 @@ -1653,8 +1653,7 @@ void stop_atmel_card(struct net_device * unregister_netdev(dev); remove_proc_entry("driver/atmel", NULL); free_irq(dev->irq, dev); - if (priv->firmware) - kfree(priv->firmware); + kfree(priv->firmware); if (freeres) { /* PCMCIA frees this stuff, so only for PCI */ release_region(dev->base_addr, 64); @@ -2450,8 +2449,7 @@ static int atmel_ioctl(struct net_device break; } - if (priv->firmware) - kfree(priv->firmware); + kfree(priv->firmware); priv->firmware = new_firmware; priv->firmware_length = com.len; diff -puN drivers/net/wireless/atmel_cs.c~kfree-cleanup-drivers-net drivers/net/wireless/atmel_cs.c --- devel/drivers/net/wireless/atmel_cs.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/wireless/atmel_cs.c 2005-10-20 01:16:52.000000000 -0700 @@ -259,8 +259,7 @@ static void atmel_detach(dev_link_t *lin /* Unlink device structure, free pieces */ *linkp = link->next; - if (link->priv) - kfree(link->priv); + kfree(link->priv); kfree(link); } diff -puN drivers/net/wireless/hostap/hostap_ioctl.c~kfree-cleanup-drivers-net drivers/net/wireless/hostap/hostap_ioctl.c --- devel/drivers/net/wireless/hostap/hostap_ioctl.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/wireless/hostap/hostap_ioctl.c 2005-10-20 01:16:52.000000000 -0700 @@ -552,7 +552,6 @@ static int prism2_ioctl_giwaplist(struct kfree(addr); kfree(qual); - return 0; } @@ -3081,9 +3080,7 @@ static int prism2_ioctl_priv_download(lo ret = local->func->download(local, param); out: - if (param != NULL) - kfree(param); - + kfree(param); return ret; } #endif /* PRISM2_DOWNLOAD_SUPPORT */ @@ -3890,9 +3887,7 @@ static int prism2_ioctl_priv_hostapd(loc } out: - if (param != NULL) - kfree(param); - + kfree(param); return ret; } diff -puN drivers/net/wireless/prism54/islpci_dev.c~kfree-cleanup-drivers-net drivers/net/wireless/prism54/islpci_dev.c --- devel/drivers/net/wireless/prism54/islpci_dev.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/wireless/prism54/islpci_dev.c 2005-10-20 01:16:52.000000000 -0700 @@ -754,8 +754,7 @@ islpci_free_memory(islpci_private *priv) pci_unmap_single(priv->pdev, buf->pci_addr, buf->size, PCI_DMA_FROMDEVICE); buf->pci_addr = 0; - if (buf->mem) - kfree(buf->mem); + kfree(buf->mem); buf->size = 0; buf->mem = NULL; } diff -puN drivers/net/wireless/prism54/oid_mgt.c~kfree-cleanup-drivers-net drivers/net/wireless/prism54/oid_mgt.c --- devel/drivers/net/wireless/prism54/oid_mgt.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/wireless/prism54/oid_mgt.c 2005-10-20 01:16:52.000000000 -0700 @@ -268,11 +268,10 @@ mgt_clean(islpci_private *priv) if (!priv->mib) return; - for (i = 0; i < OID_NUM_LAST; i++) - if (priv->mib[i]) { - kfree(priv->mib[i]); - priv->mib[i] = NULL; - } + for (i = 0; i < OID_NUM_LAST; i++) { + kfree(priv->mib[i]); + priv->mib[i] = NULL; + } kfree(priv->mib); priv->mib = NULL; } diff -puN drivers/net/wireless/strip.c~kfree-cleanup-drivers-net drivers/net/wireless/strip.c --- devel/drivers/net/wireless/strip.c~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/drivers/net/wireless/strip.c 2005-10-20 01:16:52.000000000 -0700 @@ -860,12 +860,9 @@ static int allocate_buffers(struct strip strip_info->mtu = dev->mtu = mtu; return (1); } - if (r) - kfree(r); - if (s) - kfree(s); - if (t) - kfree(t); + kfree(r); + kfree(s); + kfree(t); return (0); } @@ -922,13 +919,9 @@ static int strip_change_mtu(struct net_d printk(KERN_NOTICE "%s: strip MTU changed fom %d to %d.\n", strip_info->dev->name, old_mtu, strip_info->mtu); - if (orbuff) - kfree(orbuff); - if (osbuff) - kfree(osbuff); - if (otbuff) - kfree(otbuff); - + kfree(orbuff); + kfree(osbuff); + kfree(otbuff); return 0; } @@ -2498,18 +2491,13 @@ static int strip_close_low(struct net_de /* * Free all STRIP frame buffers. */ - if (strip_info->rx_buff) { - kfree(strip_info->rx_buff); - strip_info->rx_buff = NULL; - } - if (strip_info->sx_buff) { - kfree(strip_info->sx_buff); - strip_info->sx_buff = NULL; - } - if (strip_info->tx_buff) { - kfree(strip_info->tx_buff); - strip_info->tx_buff = NULL; - } + kfree(strip_info->rx_buff); + strip_info->rx_buff = NULL; + kfree(strip_info->sx_buff); + strip_info->sx_buff = NULL; + kfree(strip_info->tx_buff); + strip_info->tx_buff = NULL; + del_timer(&strip_info->idle_timer); return 0; } diff -puN include/net/ax25.h~kfree-cleanup-drivers-net include/net/ax25.h --- devel/include/net/ax25.h~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/include/net/ax25.h 2005-10-20 01:16:52.000000000 -0700 @@ -237,8 +237,7 @@ typedef struct ax25_cb { static __inline__ void ax25_cb_put(ax25_cb *ax25) { if (atomic_dec_and_test(&ax25->refcount)) { - if (ax25->digipeat) - kfree(ax25->digipeat); + kfree(ax25->digipeat); kfree(ax25); } } diff -puN include/net/netrom.h~kfree-cleanup-drivers-net include/net/netrom.h --- devel/include/net/netrom.h~kfree-cleanup-drivers-net 2005-10-20 01:16:52.000000000 -0700 +++ devel-akpm/include/net/netrom.h 2005-10-20 01:16:52.000000000 -0700 @@ -136,8 +136,7 @@ static __inline__ void nr_node_put(struc static __inline__ void nr_neigh_put(struct nr_neigh *nr_neigh) { if (atomic_dec_and_test(&nr_neigh->refcount)) { - if (nr_neigh->digipeat != NULL) - kfree(nr_neigh->digipeat); + kfree(nr_neigh->digipeat); kfree(nr_neigh); } } _