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/misc | |
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/misc')
-rw-r--r-- | drivers/misc/asus-laptop.c | 3 | ||||
-rw-r--r-- | drivers/misc/ibmasm/command.c | 6 | ||||
-rw-r--r-- | drivers/misc/ibmasm/ibmasmfs.c | 3 | ||||
-rw-r--r-- | drivers/misc/ibmasm/module.c | 3 |
4 files changed, 5 insertions, 10 deletions
diff --git a/drivers/misc/asus-laptop.c b/drivers/misc/asus-laptop.c index 7798f590e5aa..f75306059971 100644 --- a/drivers/misc/asus-laptop.c +++ b/drivers/misc/asus-laptop.c | |||
@@ -979,10 +979,9 @@ static int asus_hotk_add(struct acpi_device *device) | |||
979 | printk(ASUS_NOTICE "Asus Laptop Support version %s\n", | 979 | printk(ASUS_NOTICE "Asus Laptop Support version %s\n", |
980 | ASUS_LAPTOP_VERSION); | 980 | ASUS_LAPTOP_VERSION); |
981 | 981 | ||
982 | hotk = kmalloc(sizeof(struct asus_hotk), GFP_KERNEL); | 982 | hotk = kzalloc(sizeof(struct asus_hotk), GFP_KERNEL); |
983 | if (!hotk) | 983 | if (!hotk) |
984 | return -ENOMEM; | 984 | return -ENOMEM; |
985 | memset(hotk, 0, sizeof(struct asus_hotk)); | ||
986 | 985 | ||
987 | hotk->handle = device->handle; | 986 | hotk->handle = device->handle; |
988 | strcpy(acpi_device_name(device), ASUS_HOTK_DEVICE_NAME); | 987 | strcpy(acpi_device_name(device), ASUS_HOTK_DEVICE_NAME); |
diff --git a/drivers/misc/ibmasm/command.c b/drivers/misc/ibmasm/command.c index b5df347c81b9..6497872df524 100644 --- a/drivers/misc/ibmasm/command.c +++ b/drivers/misc/ibmasm/command.c | |||
@@ -41,18 +41,16 @@ struct command *ibmasm_new_command(struct service_processor *sp, size_t buffer_s | |||
41 | if (buffer_size > IBMASM_CMD_MAX_BUFFER_SIZE) | 41 | if (buffer_size > IBMASM_CMD_MAX_BUFFER_SIZE) |
42 | return NULL; | 42 | return NULL; |
43 | 43 | ||
44 | cmd = kmalloc(sizeof(struct command), GFP_KERNEL); | 44 | cmd = kzalloc(sizeof(struct command), GFP_KERNEL); |
45 | if (cmd == NULL) | 45 | if (cmd == NULL) |
46 | return NULL; | 46 | return NULL; |
47 | 47 | ||
48 | memset(cmd, 0, sizeof(*cmd)); | ||
49 | 48 | ||
50 | cmd->buffer = kmalloc(buffer_size, GFP_KERNEL); | 49 | cmd->buffer = kzalloc(buffer_size, GFP_KERNEL); |
51 | if (cmd->buffer == NULL) { | 50 | if (cmd->buffer == NULL) { |
52 | kfree(cmd); | 51 | kfree(cmd); |
53 | return NULL; | 52 | return NULL; |
54 | } | 53 | } |
55 | memset(cmd->buffer, 0, buffer_size); | ||
56 | cmd->buffer_size = buffer_size; | 54 | cmd->buffer_size = buffer_size; |
57 | 55 | ||
58 | kobject_init(&cmd->kobj); | 56 | kobject_init(&cmd->kobj); |
diff --git a/drivers/misc/ibmasm/ibmasmfs.c b/drivers/misc/ibmasm/ibmasmfs.c index eb7b073734b8..22a7e8ba211d 100644 --- a/drivers/misc/ibmasm/ibmasmfs.c +++ b/drivers/misc/ibmasm/ibmasmfs.c | |||
@@ -563,11 +563,10 @@ static ssize_t remote_settings_file_write(struct file *file, const char __user * | |||
563 | if (*offset != 0) | 563 | if (*offset != 0) |
564 | return 0; | 564 | return 0; |
565 | 565 | ||
566 | buff = kmalloc (count + 1, GFP_KERNEL); | 566 | buff = kzalloc (count + 1, GFP_KERNEL); |
567 | if (!buff) | 567 | if (!buff) |
568 | return -ENOMEM; | 568 | return -ENOMEM; |
569 | 569 | ||
570 | memset(buff, 0x0, count + 1); | ||
571 | 570 | ||
572 | if (copy_from_user(buff, ubuff, count)) { | 571 | if (copy_from_user(buff, ubuff, count)) { |
573 | kfree(buff); | 572 | kfree(buff); |
diff --git a/drivers/misc/ibmasm/module.c b/drivers/misc/ibmasm/module.c index fb03a853fac4..4f9d4a9da983 100644 --- a/drivers/misc/ibmasm/module.c +++ b/drivers/misc/ibmasm/module.c | |||
@@ -77,13 +77,12 @@ static int __devinit ibmasm_init_one(struct pci_dev *pdev, const struct pci_devi | |||
77 | /* vnc client won't work without bus-mastering */ | 77 | /* vnc client won't work without bus-mastering */ |
78 | pci_set_master(pdev); | 78 | pci_set_master(pdev); |
79 | 79 | ||
80 | sp = kmalloc(sizeof(struct service_processor), GFP_KERNEL); | 80 | sp = kzalloc(sizeof(struct service_processor), GFP_KERNEL); |
81 | if (sp == NULL) { | 81 | if (sp == NULL) { |
82 | dev_err(&pdev->dev, "Failed to allocate memory\n"); | 82 | dev_err(&pdev->dev, "Failed to allocate memory\n"); |
83 | result = -ENOMEM; | 83 | result = -ENOMEM; |
84 | goto error_kmalloc; | 84 | goto error_kmalloc; |
85 | } | 85 | } |
86 | memset(sp, 0, sizeof(struct service_processor)); | ||
87 | 86 | ||
88 | spin_lock_init(&sp->lock); | 87 | spin_lock_init(&sp->lock); |
89 | INIT_LIST_HEAD(&sp->command_queue); | 88 | INIT_LIST_HEAD(&sp->command_queue); |