diff options
author | Julia Lawall <julia@diku.dk> | 2010-05-15 17:16:58 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-06-02 16:13:10 -0400 |
commit | ff020726a7e963c3b9fb71825b3c33885022a8f0 (patch) | |
tree | 1b8271453fe346ac4eeec8b1c80e3eefe546f6bf /drivers/net/wireless/iwmc3200wifi/rx.c | |
parent | 02730029530e7ca2a4d413d6afa67bbc9548c8c2 (diff) |
drivers/net/wireless/iwmc3200wifi: Use kmemdup
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@diku.dk>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwmc3200wifi/rx.c')
-rw-r--r-- | drivers/net/wireless/iwmc3200wifi/rx.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/wireless/iwmc3200wifi/rx.c b/drivers/net/wireless/iwmc3200wifi/rx.c index e1184deca559..c02fcedea9fa 100644 --- a/drivers/net/wireless/iwmc3200wifi/rx.c +++ b/drivers/net/wireless/iwmc3200wifi/rx.c | |||
@@ -321,14 +321,14 @@ iwm_rx_ticket_node_alloc(struct iwm_priv *iwm, struct iwm_rx_ticket *ticket) | |||
321 | return ERR_PTR(-ENOMEM); | 321 | return ERR_PTR(-ENOMEM); |
322 | } | 322 | } |
323 | 323 | ||
324 | ticket_node->ticket = kzalloc(sizeof(struct iwm_rx_ticket), GFP_KERNEL); | 324 | ticket_node->ticket = kmemdup(ticket, sizeof(struct iwm_rx_ticket), |
325 | GFP_KERNEL); | ||
325 | if (!ticket_node->ticket) { | 326 | if (!ticket_node->ticket) { |
326 | IWM_ERR(iwm, "Couldn't allocate RX ticket\n"); | 327 | IWM_ERR(iwm, "Couldn't allocate RX ticket\n"); |
327 | kfree(ticket_node); | 328 | kfree(ticket_node); |
328 | return ERR_PTR(-ENOMEM); | 329 | return ERR_PTR(-ENOMEM); |
329 | } | 330 | } |
330 | 331 | ||
331 | memcpy(ticket_node->ticket, ticket, sizeof(struct iwm_rx_ticket)); | ||
332 | INIT_LIST_HEAD(&ticket_node->node); | 332 | INIT_LIST_HEAD(&ticket_node->node); |
333 | 333 | ||
334 | return ticket_node; | 334 | return ticket_node; |