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 /net | |
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 'net')
-rw-r--r-- | net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c | 3 | ||||
-rw-r--r-- | net/mac80211/ieee80211_rate.c | 3 | ||||
-rw-r--r-- | net/mac80211/ieee80211_sta.c | 3 | ||||
-rw-r--r-- | net/netfilter/nf_conntrack_standalone.c | 3 | ||||
-rw-r--r-- | net/tipc/name_table.c | 3 |
5 files changed, 5 insertions, 10 deletions
diff --git a/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c b/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c index 3da9d73d1b52..27c7918e442a 100644 --- a/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c +++ b/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c | |||
@@ -177,7 +177,7 @@ static int ct_open(struct inode *inode, struct file *file) | |||
177 | struct ct_iter_state *st; | 177 | struct ct_iter_state *st; |
178 | int ret; | 178 | int ret; |
179 | 179 | ||
180 | st = kmalloc(sizeof(struct ct_iter_state), GFP_KERNEL); | 180 | st = kzalloc(sizeof(struct ct_iter_state), GFP_KERNEL); |
181 | if (st == NULL) | 181 | if (st == NULL) |
182 | return -ENOMEM; | 182 | return -ENOMEM; |
183 | ret = seq_open(file, &ct_seq_ops); | 183 | ret = seq_open(file, &ct_seq_ops); |
@@ -185,7 +185,6 @@ static int ct_open(struct inode *inode, struct file *file) | |||
185 | goto out_free; | 185 | goto out_free; |
186 | seq = file->private_data; | 186 | seq = file->private_data; |
187 | seq->private = st; | 187 | seq->private = st; |
188 | memset(st, 0, sizeof(struct ct_iter_state)); | ||
189 | return ret; | 188 | return ret; |
190 | out_free: | 189 | out_free: |
191 | kfree(st); | 190 | kfree(st); |
diff --git a/net/mac80211/ieee80211_rate.c b/net/mac80211/ieee80211_rate.c index 16e850864b8a..2118de04fc35 100644 --- a/net/mac80211/ieee80211_rate.c +++ b/net/mac80211/ieee80211_rate.c | |||
@@ -24,11 +24,10 @@ int ieee80211_rate_control_register(struct rate_control_ops *ops) | |||
24 | { | 24 | { |
25 | struct rate_control_alg *alg; | 25 | struct rate_control_alg *alg; |
26 | 26 | ||
27 | alg = kmalloc(sizeof(*alg), GFP_KERNEL); | 27 | alg = kzalloc(sizeof(*alg), GFP_KERNEL); |
28 | if (alg == NULL) { | 28 | if (alg == NULL) { |
29 | return -ENOMEM; | 29 | return -ENOMEM; |
30 | } | 30 | } |
31 | memset(alg, 0, sizeof(*alg)); | ||
32 | alg->ops = ops; | 31 | alg->ops = ops; |
33 | 32 | ||
34 | mutex_lock(&rate_ctrl_mutex); | 33 | mutex_lock(&rate_ctrl_mutex); |
diff --git a/net/mac80211/ieee80211_sta.c b/net/mac80211/ieee80211_sta.c index ba2bf8f0a347..22b11786327a 100644 --- a/net/mac80211/ieee80211_sta.c +++ b/net/mac80211/ieee80211_sta.c | |||
@@ -1327,10 +1327,9 @@ ieee80211_rx_bss_add(struct net_device *dev, u8 *bssid) | |||
1327 | struct ieee80211_local *local = wdev_priv(dev->ieee80211_ptr); | 1327 | struct ieee80211_local *local = wdev_priv(dev->ieee80211_ptr); |
1328 | struct ieee80211_sta_bss *bss; | 1328 | struct ieee80211_sta_bss *bss; |
1329 | 1329 | ||
1330 | bss = kmalloc(sizeof(*bss), GFP_ATOMIC); | 1330 | bss = kzalloc(sizeof(*bss), GFP_ATOMIC); |
1331 | if (!bss) | 1331 | if (!bss) |
1332 | return NULL; | 1332 | return NULL; |
1333 | memset(bss, 0, sizeof(*bss)); | ||
1334 | atomic_inc(&bss->users); | 1333 | atomic_inc(&bss->users); |
1335 | atomic_inc(&bss->users); | 1334 | atomic_inc(&bss->users); |
1336 | memcpy(bss->bssid, bssid, ETH_ALEN); | 1335 | memcpy(bss->bssid, bssid, ETH_ALEN); |
diff --git a/net/netfilter/nf_conntrack_standalone.c b/net/netfilter/nf_conntrack_standalone.c index ffb6ff8c3528..fc847cc63be6 100644 --- a/net/netfilter/nf_conntrack_standalone.c +++ b/net/netfilter/nf_conntrack_standalone.c | |||
@@ -198,7 +198,7 @@ static int ct_open(struct inode *inode, struct file *file) | |||
198 | struct ct_iter_state *st; | 198 | struct ct_iter_state *st; |
199 | int ret; | 199 | int ret; |
200 | 200 | ||
201 | st = kmalloc(sizeof(struct ct_iter_state), GFP_KERNEL); | 201 | st = kzalloc(sizeof(struct ct_iter_state), GFP_KERNEL); |
202 | if (st == NULL) | 202 | if (st == NULL) |
203 | return -ENOMEM; | 203 | return -ENOMEM; |
204 | ret = seq_open(file, &ct_seq_ops); | 204 | ret = seq_open(file, &ct_seq_ops); |
@@ -206,7 +206,6 @@ static int ct_open(struct inode *inode, struct file *file) | |||
206 | goto out_free; | 206 | goto out_free; |
207 | seq = file->private_data; | 207 | seq = file->private_data; |
208 | seq->private = st; | 208 | seq->private = st; |
209 | memset(st, 0, sizeof(struct ct_iter_state)); | ||
210 | return ret; | 209 | return ret; |
211 | out_free: | 210 | out_free: |
212 | kfree(st); | 211 | kfree(st); |
diff --git a/net/tipc/name_table.c b/net/tipc/name_table.c index 9dfc9127acdd..d8473eefcd23 100644 --- a/net/tipc/name_table.c +++ b/net/tipc/name_table.c | |||
@@ -1052,12 +1052,11 @@ int tipc_nametbl_init(void) | |||
1052 | { | 1052 | { |
1053 | int array_size = sizeof(struct hlist_head) * tipc_nametbl_size; | 1053 | int array_size = sizeof(struct hlist_head) * tipc_nametbl_size; |
1054 | 1054 | ||
1055 | table.types = kmalloc(array_size, GFP_ATOMIC); | 1055 | table.types = kzalloc(array_size, GFP_ATOMIC); |
1056 | if (!table.types) | 1056 | if (!table.types) |
1057 | return -ENOMEM; | 1057 | return -ENOMEM; |
1058 | 1058 | ||
1059 | write_lock_bh(&tipc_nametbl_lock); | 1059 | write_lock_bh(&tipc_nametbl_lock); |
1060 | memset(table.types, 0, array_size); | ||
1061 | table.local_publ_count = 0; | 1060 | table.local_publ_count = 0; |
1062 | write_unlock_bh(&tipc_nametbl_lock); | 1061 | write_unlock_bh(&tipc_nametbl_lock); |
1063 | return 0; | 1062 | return 0; |