On Thu, Jan 17, 2019 at 2:02 AM Yafang Shao <laoar.s...@gmail.com> wrote: > > The only call site of sk_clone_lock is in inet_csk_clone_lock, > and sk_cookie will be set there. > So we don't need to set sk_cookie in sk_clone_lock(). > That can save an atomic operation. >
Patch is fine, although the wording of ' atomic operation' is a bit misleading. atomic_set or atomic_read are plain memory writes and reads. Real ' atomic and expensive' operations are the ones doing RMW operations (with lock semantic on SMP) Reviewed-by: Eric Dumazet <eduma...@google.com> > Signed-off-by: Yafang Shao <laoar.s...@gmail.com> > --- > net/core/sock.c | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/net/core/sock.c b/net/core/sock.c > index f00902c..21e2a84 100644 > --- a/net/core/sock.c > +++ b/net/core/sock.c > @@ -1726,7 +1726,6 @@ struct sock *sk_clone_lock(const struct sock *sk, const > gfp_t priority) > newsk->sk_err_soft = 0; > newsk->sk_priority = 0; > newsk->sk_incoming_cpu = raw_smp_processor_id(); > - atomic64_set(&newsk->sk_cookie, 0); > if (likely(newsk->sk_net_refcnt)) > sock_inuse_add(sock_net(newsk), 1); > > -- > 1.8.3.1 >