Commit 4f9c8c1b authored by Paul E. McKenney's avatar Paul E. McKenney Committed by Paul E. McKenney

ipv4: Convert call_rcu() to kfree_rcu(), drop opt_kfree_rcu()

Because opt_kfree_rcu() just calls kfree(), all call_rcu() uses of it
may be converted to kfree_rcu().  This permits opt_kfree_rcu() to
be eliminated.
Signed-off-by: default avatarPaul E. McKenney <paul.mckenney@linaro.org>
Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Acked-by: default avatarDavid S. Miller <davem@davemloft.net>
Cc: Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>
Cc: James Morris <jmorris@namei.org>
Cc: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
Cc: Patrick McHardy <kaber@trash.net>
Cc: netdev@vger.kernel.org
parent a6c76da8
...@@ -1857,11 +1857,6 @@ static int cipso_v4_genopt(unsigned char *buf, u32 buf_len, ...@@ -1857,11 +1857,6 @@ static int cipso_v4_genopt(unsigned char *buf, u32 buf_len,
return CIPSO_V4_HDR_LEN + ret_val; return CIPSO_V4_HDR_LEN + ret_val;
} }
static void opt_kfree_rcu(struct rcu_head *head)
{
kfree(container_of(head, struct ip_options_rcu, rcu));
}
/** /**
* cipso_v4_sock_setattr - Add a CIPSO option to a socket * cipso_v4_sock_setattr - Add a CIPSO option to a socket
* @sk: the socket * @sk: the socket
...@@ -1938,7 +1933,7 @@ int cipso_v4_sock_setattr(struct sock *sk, ...@@ -1938,7 +1933,7 @@ int cipso_v4_sock_setattr(struct sock *sk,
} }
rcu_assign_pointer(sk_inet->inet_opt, opt); rcu_assign_pointer(sk_inet->inet_opt, opt);
if (old) if (old)
call_rcu(&old->rcu, opt_kfree_rcu); kfree_rcu(old, rcu);
return 0; return 0;
...@@ -2005,7 +2000,7 @@ int cipso_v4_req_setattr(struct request_sock *req, ...@@ -2005,7 +2000,7 @@ int cipso_v4_req_setattr(struct request_sock *req,
req_inet = inet_rsk(req); req_inet = inet_rsk(req);
opt = xchg(&req_inet->opt, opt); opt = xchg(&req_inet->opt, opt);
if (opt) if (opt)
call_rcu(&opt->rcu, opt_kfree_rcu); kfree_rcu(opt, rcu);
return 0; return 0;
...@@ -2075,7 +2070,7 @@ static int cipso_v4_delopt(struct ip_options_rcu **opt_ptr) ...@@ -2075,7 +2070,7 @@ static int cipso_v4_delopt(struct ip_options_rcu **opt_ptr)
* remove the entire option struct */ * remove the entire option struct */
*opt_ptr = NULL; *opt_ptr = NULL;
hdr_delta = opt->opt.optlen; hdr_delta = opt->opt.optlen;
call_rcu(&opt->rcu, opt_kfree_rcu); kfree_rcu(opt, rcu);
} }
return hdr_delta; return hdr_delta;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment