[PATCH] kfree cleanup: drivers/char

This is the drivers/char/ part of the big kfree cleanup patch.

Remove pointless checks for NULL prior to calling kfree() in drivers/char/.

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>
This commit is contained in:
Jesper Juhl 2005-11-07 01:01:29 -08:00 committed by Linus Torvalds
parent fa671646f6
commit 735d5661d5
13 changed files with 29 additions and 55 deletions

View file

@ -345,17 +345,15 @@ static void con_release_unimap(struct uni_pagedir *p)
for (i = 0; i < 32; i++) {
if ((p1 = p->uni_pgdir[i]) != NULL) {
for (j = 0; j < 32; j++)
if (p1[j])
kfree(p1[j]);
kfree(p1[j]);
kfree(p1);
}
p->uni_pgdir[i] = NULL;
}
for (i = 0; i < 4; i++)
if (p->inverse_translations[i]) {
kfree(p->inverse_translations[i]);
p->inverse_translations[i] = NULL;
}
for (i = 0; i < 4; i++) {
kfree(p->inverse_translations[i]);
p->inverse_translations[i] = NULL;
}
}
void con_free_unimap(struct vc_data *vc)

View file

@ -526,10 +526,8 @@ int ffb_driver_rmctx(struct inode *inode, struct file *filp, unsigned int cmd,
if (idx < 0 || idx >= FFB_MAX_CTXS)
return -EINVAL;
if (fpriv->hw_state[idx] != NULL) {
kfree(fpriv->hw_state[idx]);
fpriv->hw_state[idx] = NULL;
}
kfree(fpriv->hw_state[idx]);
fpriv->hw_state[idx] = NULL;
return 0;
}

View file

@ -245,14 +245,12 @@ static void ffb_driver_release(drm_device_t * dev, struct file *filp)
static void ffb_driver_pretakedown(drm_device_t * dev)
{
if (dev->dev_private)
kfree(dev->dev_private);
kfree(dev->dev_private);
}
static int ffb_driver_postcleanup(drm_device_t * dev)
{
if (ffb_position != NULL)
kfree(ffb_position);
kfree(ffb_position);
return 0;
}

View file

@ -106,9 +106,7 @@ iiEllisInit(void)
static void
iiEllisCleanup(void)
{
if ( pDelayTimer != NULL ) {
kfree ( pDelayTimer );
}
kfree(pDelayTimer);
}
//******************************************************************************

View file

@ -860,10 +860,9 @@ static void __exit istallion_module_exit(void)
if ((i = unregister_chrdev(STL_SIOMEMMAJOR, "staliomem")))
printk("STALLION: failed to un-register serial memory device, "
"errno=%d\n", -i);
if (stli_tmpwritebuf != (char *) NULL)
kfree(stli_tmpwritebuf);
if (stli_txcookbuf != (char *) NULL)
kfree(stli_txcookbuf);
kfree(stli_tmpwritebuf);
kfree(stli_txcookbuf);
for (i = 0; (i < stli_nrbrds); i++) {
if ((brdp = stli_brds[i]) == (stlibrd_t *) NULL)

View file

@ -264,8 +264,7 @@ static void n_hdlc_release(struct n_hdlc *n_hdlc)
} else
break;
}
if (n_hdlc->tbuf)
kfree(n_hdlc->tbuf);
kfree(n_hdlc->tbuf);
kfree(n_hdlc);
} /* end of n_hdlc_release() */

View file

@ -2994,8 +2994,7 @@ int rx_alloc_buffers(MGSLPC_INFO *info)
void rx_free_buffers(MGSLPC_INFO *info)
{
if (info->rx_buf)
kfree(info->rx_buf);
kfree(info->rx_buf);
info->rx_buf = NULL;
}

View file

@ -2512,10 +2512,8 @@ static void rp_cleanup_module(void)
"rocketport driver\n", -retval);
put_tty_driver(rocket_driver);
for (i = 0; i < MAX_RP_PORTS; i++) {
if (rp_table[i])
kfree(rp_table[i]);
}
for (i = 0; i < MAX_RP_PORTS; i++)
kfree(rp_table[i]);
for (i = 0; i < NUM_BOARDS; i++) {
if (rcktpt_io_addr[i] <= 0 || is_PCI[i])

View file

@ -246,8 +246,7 @@ int set_selection(const struct tiocl_selection __user *sel, struct tty_struct *t
clear_selection();
return -ENOMEM;
}
if (sel_buffer)
kfree(sel_buffer);
kfree(sel_buffer);
sel_buffer = bp;
obp = bp;

View file

@ -785,8 +785,7 @@ static void __exit stallion_module_exit(void)
"errno=%d\n", -i);
class_destroy(stallion_class);
if (stl_tmpwritebuf != (char *) NULL)
kfree(stl_tmpwritebuf);
kfree(stl_tmpwritebuf);
for (i = 0; (i < stl_nrbrds); i++) {
if ((brdp = stl_brds[i]) == (stlbrd_t *) NULL)
@ -804,8 +803,7 @@ static void __exit stallion_module_exit(void)
continue;
if (portp->tty != (struct tty_struct *) NULL)
stl_hangup(portp->tty);
if (portp->tx.buf != (char *) NULL)
kfree(portp->tx.buf);
kfree(portp->tx.buf);
kfree(portp);
}
kfree(panelp);

View file

@ -4016,9 +4016,7 @@ static int mgsl_alloc_intermediate_rxbuffer_memory(struct mgsl_struct *info)
*/
static void mgsl_free_intermediate_rxbuffer_memory(struct mgsl_struct *info)
{
if ( info->intermediate_rxbuffer )
kfree(info->intermediate_rxbuffer);
kfree(info->intermediate_rxbuffer);
info->intermediate_rxbuffer = NULL;
} /* end of mgsl_free_intermediate_rxbuffer_memory() */
@ -4072,10 +4070,8 @@ static void mgsl_free_intermediate_txbuffer_memory(struct mgsl_struct *info)
int i;
for ( i=0; i<info->num_tx_holding_buffers; ++i ) {
if ( info->tx_holding_buffers[i].buffer ) {
kfree(info->tx_holding_buffers[i].buffer);
info->tx_holding_buffers[i].buffer=NULL;
}
kfree(info->tx_holding_buffers[i].buffer);
info->tx_holding_buffers[i].buffer = NULL;
}
info->get_tx_holding_index = 0;

View file

@ -2788,10 +2788,8 @@ static void shutdown(SLMP_INFO * info)
del_timer(&info->tx_timer);
del_timer(&info->status_timer);
if (info->tx_buf) {
kfree(info->tx_buf);
info->tx_buf = NULL;
}
kfree(info->tx_buf);
info->tx_buf = NULL;
spin_lock_irqsave(&info->lock,flags);
@ -3611,8 +3609,7 @@ int alloc_tmp_rx_buf(SLMP_INFO *info)
void free_tmp_rx_buf(SLMP_INFO *info)
{
if (info->tmp_rx_buf)
kfree(info->tmp_rx_buf);
kfree(info->tmp_rx_buf);
info->tmp_rx_buf = NULL;
}

View file

@ -1416,14 +1416,11 @@ static int init_dev(struct tty_driver *driver, int idx,
/* Release locally allocated memory ... nothing placed in slots */
free_mem_out:
if (o_tp)
kfree(o_tp);
kfree(o_tp);
if (o_tty)
free_tty_struct(o_tty);
if (ltp)
kfree(ltp);
if (tp)
kfree(tp);
kfree(ltp);
kfree(tp);
free_tty_struct(tty);
fail_no_mem: