projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
dad178f
)
net,rcu: convert call_rcu(ip_mc_list_reclaim) to kfree_rcu()
author
Lai Jiangshan
<
[email protected]
>
Fri, 18 Mar 2011 03:44:08 +0000
(11:44 +0800)
committer
Paul E. McKenney
<
[email protected]
>
Sun, 8 May 2011 05:50:57 +0000
(22:50 -0700)
The rcu callback ip_mc_list_reclaim() just calls a kfree(),
so we use kfree_rcu() instead of the call_rcu(ip_mc_list_reclaim).
Signed-off-by: Lai Jiangshan <
[email protected]
>
Acked-by: David S. Miller <
[email protected]
>
Signed-off-by: Paul E. McKenney <
[email protected]
>
Reviewed-by: Josh Triplett <
[email protected]
>
net/ipv4/igmp.c
patch
|
blob
|
history
diff --git
a/net/ipv4/igmp.c
b/net/ipv4/igmp.c
index 1fd3d9ce8398053588a45086ba813adfc7744de4..f22f30e3f1af5e72dec3e1a7244ce2f459881954 100644
(file)
--- a/
net/ipv4/igmp.c
+++ b/
net/ipv4/igmp.c
@@
-149,17
+149,11
@@
static void ip_mc_clear_src(struct ip_mc_list *pmc);
static int ip_mc_add_src(struct in_device *in_dev, __be32 *pmca, int sfmode,
int sfcount, __be32 *psfsrc, int delta);
-
-static void ip_mc_list_reclaim(struct rcu_head *head)
-{
- kfree(container_of(head, struct ip_mc_list, rcu));
-}
-
static void ip_ma_put(struct ip_mc_list *im)
{
if (atomic_dec_and_test(&im->refcnt)) {
in_dev_put(im->interface);
-
call_rcu(&im->rcu, ip_mc_list_reclaim
);
+
kfree_rcu(im, rcu
);
}
}