* [PATCH 1/37] drivers/net/wireless/libertas: Use kmemdup
@ 2010-05-15 21:12 Julia Lawall
[not found] ` <Pine.LNX.4.64.1005152312060.21345-QfmoRoYWmW9knbxzx/v8hQ@public.gmane.org>
0 siblings, 1 reply; 2+ messages in thread
From: Julia Lawall @ 2010-05-15 21:12 UTC (permalink / raw)
To: Dan Williams, John W. Linville,
libertas-dev-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-wireless-u79uwXL29TY76Z2rM5mHXA,
netdev-u79uwXL29TY76Z2rM5mHXA, linux-kernel
From: Julia Lawall <julia-dAYI7NvHqcQ@public.gmane.org>
Use kmemdup when some other buffer is immediately copied into the
allocated region.
A simplified version of the semantic patch that makes this change is as
follows: (http://coccinelle.lip6.fr/)
// <smpl>
@@
expression from,to,size,flag;
statement S;
@@
- to = \(kmalloc\|kzalloc\)(size,flag);
+ to = kmemdup(from,size,flag);
if (to==NULL || ...) S
- memcpy(to, from, size);
// </smpl>
Signed-off-by: Julia Lawall <julia-dAYI7NvHqcQ@public.gmane.org>
---
drivers/net/wireless/libertas/if_usb.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff -u -p a/drivers/net/wireless/libertas/if_usb.c b/drivers/net/wireless/libertas/if_usb.c
--- a/drivers/net/wireless/libertas/if_usb.c
+++ b/drivers/net/wireless/libertas/if_usb.c
@@ -618,16 +618,14 @@ static void if_usb_receive_fwload(struct
return;
}
- syncfwheader = kmalloc(sizeof(struct fwsyncheader), GFP_ATOMIC);
+ syncfwheader = kmemdup(skb->data + IPFIELD_ALIGN_OFFSET,
+ sizeof(struct fwsyncheader), GFP_ATOMIC);
if (!syncfwheader) {
lbs_deb_usbd(&cardp->udev->dev, "Failure to allocate syncfwheader\n");
kfree_skb(skb);
return;
}
- memcpy(syncfwheader, skb->data + IPFIELD_ALIGN_OFFSET,
- sizeof(struct fwsyncheader));
^ permalink raw reply [flat|nested] 2+ messages in thread[parent not found: <Pine.LNX.4.64.1005152312060.21345-QfmoRoYWmW9knbxzx/v8hQ@public.gmane.org>]
* Re: [PATCH 1/37] drivers/net/wireless/libertas: Use kmemdup [not found] ` <Pine.LNX.4.64.1005152312060.21345-QfmoRoYWmW9knbxzx/v8hQ@public.gmane.org> @ 2010-05-17 16:35 ` Dan Williams 0 siblings, 0 replies; 2+ messages in thread From: Dan Williams @ 2010-05-17 16:35 UTC (permalink / raw) To: Julia Lawall Cc: John W. Linville, libertas-dev-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, linux-wireless-u79uwXL29TY76Z2rM5mHXA, netdev-u79uwXL29TY76Z2rM5mHXA, linux-kernel-u79uwXL29TY76Z2rM5mHXA, kernel-janitors-u79uwXL29TY76Z2rM5mHXA On Sat, 2010-05-15 at 23:12 +0200, Julia Lawall wrote: > From: Julia Lawall <julia-dAYI7NvHqcQ@public.gmane.org> > > Use kmemdup when some other buffer is immediately copied into the > allocated region. > > A simplified version of the semantic patch that makes this change is as > follows: (http://coccinelle.lip6.fr/) > > // <smpl> > @@ > expression from,to,size,flag; > statement S; > @@ > > - to = \(kmalloc\|kzalloc\)(size,flag); > + to = kmemdup(from,size,flag); > if (to==NULL || ...) S > - memcpy(to, from, size); > // </smpl> > > Signed-off-by: Julia Lawall <julia-dAYI7NvHqcQ@public.gmane.org> Acked-by: Dan Williams <dcbw-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> > --- > drivers/net/wireless/libertas/if_usb.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff -u -p a/drivers/net/wireless/libertas/if_usb.c b/drivers/net/wireless/libertas/if_usb.c > --- a/drivers/net/wireless/libertas/if_usb.c > +++ b/drivers/net/wireless/libertas/if_usb.c > @@ -618,16 +618,14 @@ static void if_usb_receive_fwload(struct > return; > } > > - syncfwheader = kmalloc(sizeof(struct fwsyncheader), GFP_ATOMIC); > + syncfwheader = kmemdup(skb->data + IPFIELD_ALIGN_OFFSET, > + sizeof(struct fwsyncheader), GFP_ATOMIC); > if (!syncfwheader) { > lbs_deb_usbd(&cardp->udev->dev, "Failure to allocate syncfwheader\n"); > kfree_skb(skb); > return; > } > > - memcpy(syncfwheader, skb->data + IPFIELD_ALIGN_OFFSET, > - sizeof(struct fwsyncheader)); > - > if (!syncfwheader->cmd) { > lbs_deb_usb2(&cardp->udev->dev, "FW received Blk with correct CRC\n"); > lbs_deb_usb2(&cardp->udev->dev, "FW received Blk seqnum = %d\n", -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2010-05-17 16:35 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-05-15 21:12 [PATCH 1/37] drivers/net/wireless/libertas: Use kmemdup Julia Lawall
[not found] ` <Pine.LNX.4.64.1005152312060.21345-QfmoRoYWmW9knbxzx/v8hQ@public.gmane.org>
2010-05-17 16:35 ` Dan Williams
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).