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 /fs | |
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 'fs')
-rw-r--r-- | fs/dlm/memory.c | 12 | ||||
-rw-r--r-- | fs/ext2/super.c | 4 | ||||
-rw-r--r-- | fs/partitions/check.c | 3 |
3 files changed, 5 insertions, 14 deletions
diff --git a/fs/dlm/memory.c b/fs/dlm/memory.c index f858fef6e41c..fb9e2ee998ae 100644 --- a/fs/dlm/memory.c +++ b/fs/dlm/memory.c | |||
@@ -39,9 +39,7 @@ char *allocate_lvb(struct dlm_ls *ls) | |||
39 | { | 39 | { |
40 | char *p; | 40 | char *p; |
41 | 41 | ||
42 | p = kmalloc(ls->ls_lvblen, GFP_KERNEL); | 42 | p = kzalloc(ls->ls_lvblen, GFP_KERNEL); |
43 | if (p) | ||
44 | memset(p, 0, ls->ls_lvblen); | ||
45 | return p; | 43 | return p; |
46 | } | 44 | } |
47 | 45 | ||
@@ -59,9 +57,7 @@ struct dlm_rsb *allocate_rsb(struct dlm_ls *ls, int namelen) | |||
59 | 57 | ||
60 | DLM_ASSERT(namelen <= DLM_RESNAME_MAXLEN,); | 58 | DLM_ASSERT(namelen <= DLM_RESNAME_MAXLEN,); |
61 | 59 | ||
62 | r = kmalloc(sizeof(*r) + namelen, GFP_KERNEL); | 60 | r = kzalloc(sizeof(*r) + namelen, GFP_KERNEL); |
63 | if (r) | ||
64 | memset(r, 0, sizeof(*r) + namelen); | ||
65 | return r; | 61 | return r; |
66 | } | 62 | } |
67 | 63 | ||
@@ -101,9 +97,7 @@ struct dlm_direntry *allocate_direntry(struct dlm_ls *ls, int namelen) | |||
101 | DLM_ASSERT(namelen <= DLM_RESNAME_MAXLEN, | 97 | DLM_ASSERT(namelen <= DLM_RESNAME_MAXLEN, |
102 | printk("namelen = %d\n", namelen);); | 98 | printk("namelen = %d\n", namelen);); |
103 | 99 | ||
104 | de = kmalloc(sizeof(*de) + namelen, GFP_KERNEL); | 100 | de = kzalloc(sizeof(*de) + namelen, GFP_KERNEL); |
105 | if (de) | ||
106 | memset(de, 0, sizeof(*de) + namelen); | ||
107 | return de; | 101 | return de; |
108 | } | 102 | } |
109 | 103 | ||
diff --git a/fs/ext2/super.c b/fs/ext2/super.c index 3eefa97fe204..a6b1072daea7 100644 --- a/fs/ext2/super.c +++ b/fs/ext2/super.c | |||
@@ -883,13 +883,11 @@ static int ext2_fill_super(struct super_block *sb, void *data, int silent) | |||
883 | goto failed_mount; | 883 | goto failed_mount; |
884 | } | 884 | } |
885 | bgl_lock_init(&sbi->s_blockgroup_lock); | 885 | bgl_lock_init(&sbi->s_blockgroup_lock); |
886 | sbi->s_debts = kmalloc(sbi->s_groups_count * sizeof(*sbi->s_debts), | 886 | sbi->s_debts = kcalloc(sbi->s_groups_count, sizeof(*sbi->s_debts), GFP_KERNEL); |
887 | GFP_KERNEL); | ||
888 | if (!sbi->s_debts) { | 887 | if (!sbi->s_debts) { |
889 | printk ("EXT2-fs: not enough memory\n"); | 888 | printk ("EXT2-fs: not enough memory\n"); |
890 | goto failed_mount_group_desc; | 889 | goto failed_mount_group_desc; |
891 | } | 890 | } |
892 | memset(sbi->s_debts, 0, sbi->s_groups_count * sizeof(*sbi->s_debts)); | ||
893 | for (i = 0; i < db_count; i++) { | 891 | for (i = 0; i < db_count; i++) { |
894 | block = descriptor_loc(sb, logic_sb_block, i); | 892 | block = descriptor_loc(sb, logic_sb_block, i); |
895 | sbi->s_group_desc[i] = sb_bread(sb, block); | 893 | sbi->s_group_desc[i] = sb_bread(sb, block); |
diff --git a/fs/partitions/check.c b/fs/partitions/check.c index 98e0b85a9bb2..783c57ec07d3 100644 --- a/fs/partitions/check.c +++ b/fs/partitions/check.c | |||
@@ -372,11 +372,10 @@ void add_partition(struct gendisk *disk, int part, sector_t start, sector_t len, | |||
372 | { | 372 | { |
373 | struct hd_struct *p; | 373 | struct hd_struct *p; |
374 | 374 | ||
375 | p = kmalloc(sizeof(*p), GFP_KERNEL); | 375 | p = kzalloc(sizeof(*p), GFP_KERNEL); |
376 | if (!p) | 376 | if (!p) |
377 | return; | 377 | return; |
378 | 378 | ||
379 | memset(p, 0, sizeof(*p)); | ||
380 | p->start_sect = start; | 379 | p->start_sect = start; |
381 | p->nr_sects = len; | 380 | p->nr_sects = len; |
382 | p->partno = part; | 381 | p->partno = part; |