diff options
author | Yoann Padioleau <padator@wanadoo.fr> | 2007-07-19 04:49:03 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-19 13:04:50 -0400 |
commit | dd00cc486ab1c17049a535413d1751ef3482141c (patch) | |
tree | d90ff69ea06792b9284f2f2665c96624f121b88a /drivers/char/esp.c | |
parent | 3b5ad0797c0e4049001f961a8b58f1d0ce532072 (diff) |
some kmalloc/memset ->kzalloc (tree wide)
Transform some calls to kmalloc/memset to a single kzalloc (or kcalloc).
Here is a short excerpt of the semantic patch performing
this transformation:
@@
type T2;
expression x;
identifier f,fld;
expression E;
expression E1,E2;
expression e1,e2,e3,y;
statement S;
@@
x =
- kmalloc
+ kzalloc
(E1,E2)
... when != \(x->fld=E;\|y=f(...,x,...);\|f(...,x,...);\|x=E;\|while(...) S\|for(e1;e2;e3) S\)
- memset((T2)x,0,E1);
@@
expression E1,E2,E3;
@@
- kzalloc(E1 * E2,E3)
+ kcalloc(E1,E2,E3)
[akpm@linux-foundation.org: get kcalloc args the right way around]
Signed-off-by: Yoann Padioleau <padator@wanadoo.fr>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Acked-by: Russell King <rmk@arm.linux.org.uk>
Cc: Bryan Wu <bryan.wu@analog.com>
Acked-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Dave Airlie <airlied@linux.ie>
Acked-by: Roland Dreier <rolandd@cisco.com>
Cc: Jiri Kosina <jkosina@suse.cz>
Acked-by: Dmitry Torokhov <dtor@mail.ru>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Acked-by: Pierre Ossman <drzeus-list@drzeus.cx>
Cc: Jeff Garzik <jeff@garzik.org>
Cc: "David S. Miller" <davem@davemloft.net>
Acked-by: Greg KH <greg@kroah.com>
Cc: James Bottomley <James.Bottomley@steeleye.com>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/char/esp.c')
-rw-r--r-- | drivers/char/esp.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/char/esp.c b/drivers/char/esp.c index 74cd5118af57..2e7ae42a5503 100644 --- a/drivers/char/esp.c +++ b/drivers/char/esp.c | |||
@@ -2459,7 +2459,7 @@ static int __init espserial_init(void) | |||
2459 | return 1; | 2459 | return 1; |
2460 | } | 2460 | } |
2461 | 2461 | ||
2462 | info = kmalloc(sizeof(struct esp_struct), GFP_KERNEL); | 2462 | info = kzalloc(sizeof(struct esp_struct), GFP_KERNEL); |
2463 | 2463 | ||
2464 | if (!info) | 2464 | if (!info) |
2465 | { | 2465 | { |
@@ -2469,7 +2469,6 @@ static int __init espserial_init(void) | |||
2469 | return 1; | 2469 | return 1; |
2470 | } | 2470 | } |
2471 | 2471 | ||
2472 | memset((void *)info, 0, sizeof(struct esp_struct)); | ||
2473 | spin_lock_init(&info->lock); | 2472 | spin_lock_init(&info->lock); |
2474 | /* rx_trigger, tx_trigger are needed by autoconfig */ | 2473 | /* rx_trigger, tx_trigger are needed by autoconfig */ |
2475 | info->config.rx_trigger = rx_trigger; | 2474 | info->config.rx_trigger = rx_trigger; |
@@ -2527,7 +2526,7 @@ static int __init espserial_init(void) | |||
2527 | if (!dma) | 2526 | if (!dma) |
2528 | info->stat_flags |= ESP_STAT_NEVER_DMA; | 2527 | info->stat_flags |= ESP_STAT_NEVER_DMA; |
2529 | 2528 | ||
2530 | info = kmalloc(sizeof(struct esp_struct), GFP_KERNEL); | 2529 | info = kzalloc(sizeof(struct esp_struct), GFP_KERNEL); |
2531 | if (!info) | 2530 | if (!info) |
2532 | { | 2531 | { |
2533 | printk(KERN_ERR "Couldn't allocate memory for esp serial device information\n"); | 2532 | printk(KERN_ERR "Couldn't allocate memory for esp serial device information\n"); |
@@ -2536,7 +2535,6 @@ static int __init espserial_init(void) | |||
2536 | return 0; | 2535 | return 0; |
2537 | } | 2536 | } |
2538 | 2537 | ||
2539 | memset((void *)info, 0, sizeof(struct esp_struct)); | ||
2540 | /* rx_trigger, tx_trigger are needed by autoconfig */ | 2538 | /* rx_trigger, tx_trigger are needed by autoconfig */ |
2541 | info->config.rx_trigger = rx_trigger; | 2539 | info->config.rx_trigger = rx_trigger; |
2542 | info->config.tx_trigger = tx_trigger; | 2540 | info->config.tx_trigger = tx_trigger; |