Commit 4670994d150a86ebd53ab353a2af517c5465bfaf

Authored by Lai Jiangshan
Committed by Paul E. McKenney
1 parent 3acb458c32

net,rcu: convert call_rcu(fc_rport_free_rcu) to kfree_rcu()

The rcu callback fc_rport_free_rcu() just calls a kfree(),
so we use kfree_rcu() instead of the call_rcu(fc_rport_free_rcu).

Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>

Showing 1 changed file with 1 additions and 11 deletions Side-by-side Diff

net/ipv4/fib_semantics.c
... ... @@ -141,18 +141,8 @@
141 141 },
142 142 };
143 143  
144   -
145 144 /* Release a nexthop info record */
146 145  
147   -static void free_fib_info_rcu(struct rcu_head *head)
148   -{
149   - struct fib_info *fi = container_of(head, struct fib_info, rcu);
150   -
151   - if (fi->fib_metrics != (u32 *) dst_default_metrics)
152   - kfree(fi->fib_metrics);
153   - kfree(fi);
154   -}
155   -
156 146 void free_fib_info(struct fib_info *fi)
157 147 {
158 148 if (fi->fib_dead == 0) {
... ... @@ -166,7 +156,7 @@
166 156 } endfor_nexthops(fi);
167 157 fib_info_cnt--;
168 158 release_net(fi->fib_net);
169   - call_rcu(&fi->rcu, free_fib_info_rcu);
  159 + kfree_rcu(fi, rcu);
170 160 }
171 161  
172 162 void fib_release_info(struct fib_info *fi)