Thanks for the suggestions. I received a message that this patch has been picked up and will appear in linux-next shortly, so I will just fix these problems after that happens, if that is ok. julia On Wed, 12 May 2010, walter harms wrote: > > > Julia Lawall schrieb: > > From: Julia Lawall <julia@xxxxxxx> > > > > Drop cast on the result of kmalloc and similar functions. > > > > The semantic patch that makes this change is as follows: > > (http://coccinelle.lip6.fr/) > > > > // <smpl> > > @@ > > type T; > > @@ > > > > - (T *) > > (\(kmalloc\|kzalloc\|kcalloc\|kmem_cache_alloc\|kmem_cache_zalloc\| > > kmem_cache_alloc_node\|kmalloc_node\|kzalloc_node\)(...)) > > // </smpl> > > > > Signed-off-by: Julia Lawall <julia@xxxxxxx> > > > > --- > > drivers/staging/comedi/drivers/unioxx5.c | 2 +- > > drivers/staging/crystalhd/crystalhd_misc.c | 2 +- > > drivers/staging/cx25821/cx25821-audio-upstream.c | 6 ++---- > > drivers/staging/cx25821/cx25821-video-upstream-ch2.c | 6 ++---- > > drivers/staging/cx25821/cx25821-video-upstream.c | 4 ++-- > > drivers/staging/et131x/et1310_rx.c | 2 +- > > drivers/staging/et131x/et1310_tx.c | 2 +- > > drivers/staging/rt2860/common/cmm_data.c | 2 +- > > drivers/staging/rt2860/common/cmm_mac_pci.c | 2 +- > > drivers/staging/rt2860/common/cmm_mac_usb.c | 2 +- > > drivers/staging/rt2860/rt_linux.c | 2 +- > > drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.c | 7 +++---- > > drivers/staging/rtl8192e/ieee80211/ieee80211_module.c | 2 +- > > drivers/staging/rtl8192e/ieee80211/ieee80211_rx.c | 2 +- > > drivers/staging/rtl8192e/ieee80211/ieee80211_softmac.c | 7 +++---- > > drivers/staging/rtl8192e/r8192E_core.c | 2 +- > > drivers/staging/rtl8192su/ieee80211/ieee80211_module.c | 2 +- > > drivers/staging/rtl8192su/ieee80211/ieee80211_rx.c | 2 +- > > drivers/staging/rtl8192su/ieee80211/ieee80211_softmac.c | 7 +++---- > > drivers/staging/rtl8192su/r8192U_core.c | 2 +- > > drivers/staging/rtl8192u/ieee80211/ieee80211_module.c | 2 +- > > drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c | 2 +- > > drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c | 7 +++---- > > drivers/staging/rtl8192u/r8192U_core.c | 10 ++++++---- > > drivers/staging/vme/bridges/vme_ca91cx42.c | 3 +-- > > drivers/staging/vme/bridges/vme_tsi148.c | 2 +- > > drivers/staging/vt6655/device_main.c | 2 +- > > drivers/staging/vt6655/hostap.c | 4 ++-- > > drivers/staging/vt6655/wpactl.c | 2 +- > > drivers/staging/vt6656/hostap.c | 4 ++-- > > drivers/staging/vt6656/main_usb.c | 2 +- > > drivers/staging/vt6656/wpactl.c | 2 +- > > drivers/staging/wlags49_h2/wl_priv.c | 4 ++-- > > 33 files changed, 52 insertions(+), 59 deletions(-) > > > > diff --git a/drivers/staging/comedi/drivers/unioxx5.c b/drivers/staging/comedi/drivers/unioxx5.c > > index be1d83d..16d4c9f 100644 > > --- a/drivers/staging/comedi/drivers/unioxx5.c > > +++ b/drivers/staging/comedi/drivers/unioxx5.c > > @@ -285,7 +285,7 @@ static int __unioxx5_subdev_init(struct comedi_subdevice *subdev, > > return -EIO; > > } > > > > - usp = (struct unioxx5_subd_priv *)kzalloc(sizeof(*usp), GFP_KERNEL); > > + usp = kzalloc(sizeof(*usp), GFP_KERNEL); > > > > if (usp == NULL) { > > printk(KERN_ERR "comedi%d: erorr! --> out of memory!\n", minor); > > diff --git a/drivers/staging/crystalhd/crystalhd_misc.c b/drivers/staging/crystalhd/crystalhd_misc.c > > index d134667..548dc09 100644 > > --- a/drivers/staging/crystalhd/crystalhd_misc.c > > +++ b/drivers/staging/crystalhd/crystalhd_misc.c > > @@ -887,7 +887,7 @@ int crystalhd_create_dio_pool(struct crystalhd_adp *adp, uint32_t max_pages) > > BC_LINK_SG_POOL_SZ, max_pages, asz, adp->fill_byte_pool); > > > > for (i = 0; i < BC_LINK_SG_POOL_SZ; i++) { > > - temp = (uint8_t *)kzalloc(asz, GFP_KERNEL); > > + temp = kzalloc(asz, GFP_KERNEL); > > if ((temp) == NULL) { > > BCMLOG_ERR("Failed to alloc %d mem\n", asz); > > return -ENOMEM; > > diff --git a/drivers/staging/cx25821/cx25821-audio-upstream.c b/drivers/staging/cx25821/cx25821-audio-upstream.c > > index ac13ba9..dbd7bc6 100644 > > --- a/drivers/staging/cx25821/cx25821-audio-upstream.c > > +++ b/drivers/staging/cx25821/cx25821-audio-upstream.c > > @@ -753,8 +753,7 @@ int cx25821_audio_upstream_init(struct cx25821_dev *dev, int channel_select) > > > > if (dev->input_audiofilename) { > > str_length = strlen(dev->input_audiofilename); > > - dev->_audiofilename = > > - (char *)kmalloc(str_length + 1, GFP_KERNEL); > > + dev->_audiofilename = kmalloc(str_length + 1, GFP_KERNEL); > > > > if (!dev->_audiofilename) > > goto error; > > @@ -768,8 +767,7 @@ int cx25821_audio_upstream_init(struct cx25821_dev *dev, int channel_select) > > } > > } else { > > str_length = strlen(_defaultAudioName); > > - dev->_audiofilename = > > - (char *)kmalloc(str_length + 1, GFP_KERNEL); > > + dev->_audiofilename = kmalloc(str_length + 1, GFP_KERNEL); > > > > if (!dev->_audiofilename) > > goto error; > > diff --git a/drivers/staging/cx25821/cx25821-video-upstream-ch2.c b/drivers/staging/cx25821/cx25821-video-upstream-ch2.c > > index cc51618..343df66 100644 > > --- a/drivers/staging/cx25821/cx25821-video-upstream-ch2.c > > +++ b/drivers/staging/cx25821/cx25821-video-upstream-ch2.c > > @@ -769,8 +769,7 @@ int cx25821_vidupstream_init_ch2(struct cx25821_dev *dev, int channel_select, > > > > if (dev->input_filename_ch2) { > > str_length = strlen(dev->input_filename_ch2); > > - dev->_filename_ch2 = > > - (char *)kmalloc(str_length + 1, GFP_KERNEL); > > + dev->_filename_ch2 = kmalloc(str_length + 1, GFP_KERNEL); > > > > if (!dev->_filename_ch2) > > goto error; > > @@ -779,8 +778,7 @@ int cx25821_vidupstream_init_ch2(struct cx25821_dev *dev, int channel_select, > > str_length + 1); > > } else { > > str_length = strlen(dev->_defaultname_ch2); > > - dev->_filename_ch2 = > > - (char *)kmalloc(str_length + 1, GFP_KERNEL); > > + dev->_filename_ch2 = kmalloc(str_length + 1, GFP_KERNEL); > > > > if (!dev->_filename_ch2) > > goto error; > this look like the begin of kstrdup() > > > > > diff --git a/drivers/staging/cx25821/cx25821-video-upstream.c b/drivers/staging/cx25821/cx25821-video-upstream.c > > index a22a569..09f4756 100644 > > --- a/drivers/staging/cx25821/cx25821-video-upstream.c > > +++ b/drivers/staging/cx25821/cx25821-video-upstream.c > > @@ -831,7 +831,7 @@ int cx25821_vidupstream_init_ch1(struct cx25821_dev *dev, int channel_select, > > > > if (dev->input_filename) { > > str_length = strlen(dev->input_filename); > > - dev->_filename = (char *)kmalloc(str_length + 1, GFP_KERNEL); > > + dev->_filename = kmalloc(str_length + 1, GFP_KERNEL); > > > > if (!dev->_filename) > > goto error; > > this look like the begin of kstrdup() > > @@ -839,7 +839,7 @@ int cx25821_vidupstream_init_ch1(struct cx25821_dev *dev, int channel_select, > > memcpy(dev->_filename, dev->input_filename, str_length + 1); > > } else { > > str_length = strlen(dev->_defaultname); > > - dev->_filename = (char *)kmalloc(str_length + 1, GFP_KERNEL); > > + dev->_filename = kmalloc(str_length + 1, GFP_KERNEL); > > > > if (!dev->_filename) > > goto error; > > this look like the begin of kstrdup() > > > diff --git a/drivers/staging/et131x/et1310_rx.c b/drivers/staging/et131x/et1310_rx.c > > index 8f5dceb..8e04bdd 100644 > > --- a/drivers/staging/et131x/et1310_rx.c > > +++ b/drivers/staging/et131x/et1310_rx.c > > @@ -547,7 +547,7 @@ int et131x_init_recv(struct et131x_adapter *adapter) > > > > /* Setup each RFD */ > > for (rfdct = 0; rfdct < rx_ring->NumRfd; rfdct++) { > > - rfd = (MP_RFD *) kmem_cache_alloc(rx_ring->RecvLookaside, > > + rfd = kmem_cache_alloc(rx_ring->RecvLookaside, > > GFP_ATOMIC | GFP_DMA); > > > > if (!rfd) { > > diff --git a/drivers/staging/et131x/et1310_tx.c b/drivers/staging/et131x/et1310_tx.c > > index b6ff20f..0f3473d 100644 > > --- a/drivers/staging/et131x/et1310_tx.c > > +++ b/drivers/staging/et131x/et1310_tx.c > > @@ -112,7 +112,7 @@ int et131x_tx_dma_memory_alloc(struct et131x_adapter *adapter) > > struct tx_ring *tx_ring = &adapter->tx_ring; > > > > /* Allocate memory for the TCB's (Transmit Control Block) */ > > - adapter->tx_ring.tcb_ring = (struct tcb *) > > + adapter->tx_ring.tcb_ring = > > kcalloc(NUM_TCB, sizeof(struct tcb), GFP_ATOMIC | GFP_DMA); > > if (!adapter->tx_ring.tcb_ring) { > > dev_err(&adapter->pdev->dev, "Cannot alloc memory for TCBs\n"); > > diff --git a/drivers/staging/rt2860/common/cmm_data.c b/drivers/staging/rt2860/common/cmm_data.c > > index 65b00e6..93a5347 100644 > > --- a/drivers/staging/rt2860/common/cmm_data.c > > +++ b/drivers/staging/rt2860/common/cmm_data.c > > @@ -1424,7 +1424,7 @@ u32 deaggregate_AMSDU_announce(struct rt_rtmp_adapter *pAd, > > if ((Header802_3[12] == 0x88) && (Header802_3[13] == 0x8E)) { > > /* avoid local heap overflow, use dyanamic allocation */ > > struct rt_mlme_queue_elem *Elem = > > - (struct rt_mlme_queue_elem *)kmalloc(sizeof(struct rt_mlme_queue_elem), > > + kmalloc(sizeof(struct rt_mlme_queue_elem), > > MEM_ALLOC_FLAG); > > if (Elem != NULL) { > > memmove(Elem->Msg + > > diff --git a/drivers/staging/rt2860/common/cmm_mac_pci.c b/drivers/staging/rt2860/common/cmm_mac_pci.c > > index 560ebd3..e26ba49 100644 > > --- a/drivers/staging/rt2860/common/cmm_mac_pci.c > > +++ b/drivers/staging/rt2860/common/cmm_mac_pci.c > > @@ -1558,7 +1558,7 @@ void RT28xxPciMlmeRadioOFF(struct rt_rtmp_adapter *pAd) > > if (INFRA_ON(pAd) || ADHOC_ON(pAd)) { > > struct rt_mlme_disassoc_req DisReq; > > struct rt_mlme_queue_elem *pMsgElem = > > - (struct rt_mlme_queue_elem *)kmalloc(sizeof(struct rt_mlme_queue_elem), > > + kmalloc(sizeof(struct rt_mlme_queue_elem), > > MEM_ALLOC_FLAG); > > > > if (pMsgElem) { > > diff --git a/drivers/staging/rt2860/common/cmm_mac_usb.c b/drivers/staging/rt2860/common/cmm_mac_usb.c > > index 9dd6959..8aec70f 100644 > > --- a/drivers/staging/rt2860/common/cmm_mac_usb.c > > +++ b/drivers/staging/rt2860/common/cmm_mac_usb.c > > @@ -1087,7 +1087,7 @@ void RT28xxUsbMlmeRadioOFF(struct rt_rtmp_adapter *pAd) > > if (INFRA_ON(pAd) || ADHOC_ON(pAd)) { > > struct rt_mlme_disassoc_req DisReq; > > struct rt_mlme_queue_elem *pMsgElem = > > - (struct rt_mlme_queue_elem *)kmalloc(sizeof(struct rt_mlme_queue_elem), > > + kmalloc(sizeof(struct rt_mlme_queue_elem), > > MEM_ALLOC_FLAG); > > > > if (pMsgElem) { > > diff --git a/drivers/staging/rt2860/rt_linux.c b/drivers/staging/rt2860/rt_linux.c > > index 27b7810..0029b2d 100644 > > --- a/drivers/staging/rt2860/rt_linux.c > > +++ b/drivers/staging/rt2860/rt_linux.c > > @@ -154,7 +154,7 @@ void RTMP_GetCurrentSystemTime(LARGE_INTEGER *time) > > /* pAd MUST allow to be NULL */ > > int os_alloc_mem(struct rt_rtmp_adapter *pAd, u8 ** mem, unsigned long size) > > { > > - *mem = (u8 *)kmalloc(size, GFP_ATOMIC); > > + *mem = kmalloc(size, GFP_ATOMIC); > > if (*mem) > > return NDIS_STATUS_SUCCESS; > > else > > diff --git a/drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.c b/drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.c > > index e099a5f..b7426fe 100644 > > --- a/drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.c > > +++ b/drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.c > > @@ -1435,7 +1435,7 @@ static inline u16 auth_parse(struct sk_buff *skb, u8** challenge, int *chlen) > > > > if(*(t++) == MFIE_TYPE_CHALLENGE){ > > *chlen = *(t++); > > - *challenge = (u8*)kmalloc(*chlen, GFP_ATOMIC); > > + *challenge = kmalloc(*chlen, GFP_ATOMIC); > > memcpy(*challenge, t, *chlen); > > } > > } > > kmalloc() will succeed ? > > > > > @@ -2861,8 +2861,7 @@ static int ieee80211_wpa_set_encryption(struct ieee80211_device *ieee, > > > > ieee80211_crypt_delayed_deinit(ieee, crypt); > > > > - new_crypt = (struct ieee80211_crypt_data *) > > - kmalloc(sizeof(*new_crypt), GFP_KERNEL); > > + new_crypt = kmalloc(sizeof(*new_crypt), GFP_KERNEL); > > if (new_crypt == NULL) { > > ret = -ENOMEM; > > goto done; > > @@ -2953,7 +2952,7 @@ int ieee80211_wpa_supplicant_ioctl(struct ieee80211_device *ieee, struct iw_poin > > goto out; > > } > > > > - param = (struct ieee_param *)kmalloc(p->length, GFP_KERNEL); > > + param = kmalloc(p->length, GFP_KERNEL); > > if (param == NULL){ > > ret = -ENOMEM; > > goto out; > > diff --git a/drivers/staging/rtl8192e/ieee80211/ieee80211_module.c b/drivers/staging/rtl8192e/ieee80211/ieee80211_module.c > > index f43a7db..c7aa1c6 100644 > > --- a/drivers/staging/rtl8192e/ieee80211/ieee80211_module.c > > +++ b/drivers/staging/rtl8192e/ieee80211/ieee80211_module.c > > @@ -170,7 +170,7 @@ struct net_device *alloc_ieee80211(int sizeof_priv) > > ieee80211_softmac_init(ieee); > > > > #if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,13)) > > - ieee->pHTInfo = (RT_HIGH_THROUGHPUT*)kzalloc(sizeof(RT_HIGH_THROUGHPUT), GFP_KERNEL); > > + ieee->pHTInfo = kzalloc(sizeof(RT_HIGH_THROUGHPUT), GFP_KERNEL); > > #else > > ieee->pHTInfo = (RT_HIGH_THROUGHPUT*)kmalloc(sizeof(RT_HIGH_THROUGHPUT), GFP_KERNEL); > > memset(ieee->pHTInfo,0,sizeof(RT_HIGH_THROUGHPUT)); > > diff --git a/drivers/staging/rtl8192e/ieee80211/ieee80211_rx.c b/drivers/staging/rtl8192e/ieee80211/ieee80211_rx.c > > index ce265ae..da10067 100644 > > --- a/drivers/staging/rtl8192e/ieee80211/ieee80211_rx.c > > +++ b/drivers/staging/rtl8192e/ieee80211/ieee80211_rx.c > > @@ -1397,7 +1397,7 @@ int ieee80211_rtl_rx(struct ieee80211_device *ieee, struct sk_buff *skb, > > /* skb: hdr + (possible reassembled) full plaintext payload */ > > payload = skb->data + hdrlen; > > //ethertype = (payload[6] << 8) | payload[7]; > > - rxb = (struct ieee80211_rxb*)kmalloc(sizeof(struct ieee80211_rxb),GFP_ATOMIC); > > + rxb = kmalloc(sizeof(struct ieee80211_rxb), GFP_ATOMIC); > > if(rxb == NULL) > > { > > IEEE80211_DEBUG(IEEE80211_DL_ERR,"%s(): kmalloc rxb error\n",__FUNCTION__); > > diff --git a/drivers/staging/rtl8192e/ieee80211/ieee80211_softmac.c b/drivers/staging/rtl8192e/ieee80211/ieee80211_softmac.c > > index b4beb20..4f6ce06 100644 > > --- a/drivers/staging/rtl8192e/ieee80211/ieee80211_softmac.c > > +++ b/drivers/staging/rtl8192e/ieee80211/ieee80211_softmac.c > > @@ -1800,7 +1800,7 @@ static inline u16 auth_parse(struct sk_buff *skb, u8** challenge, int *chlen) > > > > if(*(t++) == MFIE_TYPE_CHALLENGE){ > > *chlen = *(t++); > > - *challenge = (u8*)kmalloc(*chlen, GFP_ATOMIC); > > + *challenge = kmalloc(*chlen, GFP_ATOMIC); > > memcpy(*challenge, t, *chlen); > > } > > } > > kmalloc() will succeed ? > > > > @@ -3459,8 +3459,7 @@ static int ieee80211_wpa_set_encryption(struct ieee80211_device *ieee, > > > > ieee80211_crypt_delayed_deinit(ieee, crypt); > > > > - new_crypt = (struct ieee80211_crypt_data *) > > - kmalloc(sizeof(*new_crypt), GFP_KERNEL); > > + new_crypt = kmalloc(sizeof(*new_crypt), GFP_KERNEL); > > if (new_crypt == NULL) { > > ret = -ENOMEM; > > goto done; > > @@ -3592,7 +3591,7 @@ int ieee80211_wpa_supplicant_ioctl(struct ieee80211_device *ieee, struct iw_poin > > goto out; > > } > > > > - param = (struct ieee_param *)kmalloc(p->length, GFP_KERNEL); > > + param = kmalloc(p->length, GFP_KERNEL); > > if (param == NULL){ > > ret = -ENOMEM; > > goto out; > > diff --git a/drivers/staging/rtl8192e/r8192E_core.c b/drivers/staging/rtl8192e/r8192E_core.c > > index 604c691..533be48 100644 > > --- a/drivers/staging/rtl8192e/r8192E_core.c > > +++ b/drivers/staging/rtl8192e/r8192E_core.c > > @@ -5040,7 +5040,7 @@ static int rtl8192_ioctl(struct net_device *dev, struct ifreq *rq, int cmd) > > goto out; > > } > > > > - ipw = (struct ieee_param *)kmalloc(p->length, GFP_KERNEL); > > + ipw = kmalloc(p->length, GFP_KERNEL); > > if (ipw == NULL){ > > ret = -ENOMEM; > > goto out; > > diff --git a/drivers/staging/rtl8192su/ieee80211/ieee80211_module.c b/drivers/staging/rtl8192su/ieee80211/ieee80211_module.c > > index c024fa6..73de3ba 100644 > > --- a/drivers/staging/rtl8192su/ieee80211/ieee80211_module.c > > +++ b/drivers/staging/rtl8192su/ieee80211/ieee80211_module.c > > @@ -161,7 +161,7 @@ struct net_device *alloc_ieee80211(int sizeof_priv) > > > > ieee80211_softmac_init(ieee); > > > > - ieee->pHTInfo = (RT_HIGH_THROUGHPUT*)kzalloc(sizeof(RT_HIGH_THROUGHPUT), GFP_KERNEL); > > + ieee->pHTInfo = kzalloc(sizeof(RT_HIGH_THROUGHPUT), GFP_KERNEL); > > if (ieee->pHTInfo == NULL) > > { > > IEEE80211_DEBUG(IEEE80211_DL_ERR, "can't alloc memory for HTInfo\n"); > > diff --git a/drivers/staging/rtl8192su/ieee80211/ieee80211_rx.c b/drivers/staging/rtl8192su/ieee80211/ieee80211_rx.c > > index cc80faf..d3b34cc 100644 > > --- a/drivers/staging/rtl8192su/ieee80211/ieee80211_rx.c > > +++ b/drivers/staging/rtl8192su/ieee80211/ieee80211_rx.c > > @@ -1191,7 +1191,7 @@ int ieee80211_rtl_rx(struct ieee80211_device *ieee, struct sk_buff *skb, > > /* skb: hdr + (possible reassembled) full plaintext payload */ > > payload = skb->data + hdrlen; > > //ethertype = (payload[6] << 8) | payload[7]; > > - rxb = (struct ieee80211_rxb*)kmalloc(sizeof(struct ieee80211_rxb),GFP_ATOMIC); > > + rxb = kmalloc(sizeof(struct ieee80211_rxb), GFP_ATOMIC); > > if(rxb == NULL) > > { > > IEEE80211_DEBUG(IEEE80211_DL_ERR,"%s(): kmalloc rxb error\n",__FUNCTION__); > > diff --git a/drivers/staging/rtl8192su/ieee80211/ieee80211_softmac.c b/drivers/staging/rtl8192su/ieee80211/ieee80211_softmac.c > > index 3cf5fdf..660aee2 100644 > > --- a/drivers/staging/rtl8192su/ieee80211/ieee80211_softmac.c > > +++ b/drivers/staging/rtl8192su/ieee80211/ieee80211_softmac.c > > @@ -1557,7 +1557,7 @@ static inline u16 auth_parse(struct sk_buff *skb, u8** challenge, int *chlen) > > > > if(*(t++) == MFIE_TYPE_CHALLENGE){ > > *chlen = *(t++); > > - *challenge = (u8*)kmalloc(*chlen, GFP_ATOMIC); > > + *challenge = kmalloc(*chlen, GFP_ATOMIC); > > memcpy(*challenge, t, *chlen); > > } > > } > > kmalloc() will succeed ? > > > > hope that helps, > > re, > wh > > -- > To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel