From: walter harms <wharms@bfs.de>
To: Julia Lawall <julia@diku.dk>
Cc: Greg Kroah-Hartman <gregkh@suse.de>,
devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org,
kernel-janitors@vger.kernel.org
Subject: Re: [PATCH 3/5] drivers/staging: Drop memory allocation cast
Date: Wed, 12 May 2010 07:27:18 +0000 [thread overview]
Message-ID: <4BEA5856.9040704@bfs.de> (raw)
In-Reply-To: <Pine.LNX.4.64.1005112026300.4330@ask.diku.dk>
Julia Lawall schrieb:
> From: Julia Lawall <julia@diku.dk>
>
> 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@diku.dk>
>
> ---
> 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
WARNING: multiple messages have this Message-ID (diff)
From: walter harms <wharms@bfs.de>
To: Julia Lawall <julia@diku.dk>
Cc: Greg Kroah-Hartman <gregkh@suse.de>,
devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org,
kernel-janitors@vger.kernel.org
Subject: Re: [PATCH 3/5] drivers/staging: Drop memory allocation cast
Date: Wed, 12 May 2010 09:27:18 +0200 [thread overview]
Message-ID: <4BEA5856.9040704@bfs.de> (raw)
In-Reply-To: <Pine.LNX.4.64.1005112026300.4330@ask.diku.dk>
Julia Lawall schrieb:
> From: Julia Lawall <julia@diku.dk>
>
> 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@diku.dk>
>
> ---
> 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
next prev parent reply other threads:[~2010-05-12 7:27 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-11 18:26 [PATCH 3/5] drivers/staging: Drop memory allocation cast Julia Lawall
2010-05-11 18:26 ` Julia Lawall
2010-05-12 7:27 ` walter harms [this message]
2010-05-12 7:27 ` walter harms
2010-05-12 8:10 ` Julia Lawall
2010-05-12 8:10 ` Julia Lawall
2010-05-12 9:19 ` walter harms
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4BEA5856.9040704@bfs.de \
--to=wharms@bfs.de \
--cc=devel@driverdev.osuosl.org \
--cc=gregkh@suse.de \
--cc=julia@diku.dk \
--cc=kernel-janitors@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.