Loading net/core/sock_diag.c +6 −6 Original line number Diff line number Diff line Loading @@ -25,14 +25,14 @@ DEFINE_COOKIE(sock_cookie); u64 __sock_gen_cookie(struct sock *sk) { while (1) { u64 res = atomic64_read(&sk->sk_cookie); if (res) return res; res = gen_cookie_next(&sock_cookie); atomic64_cmpxchg(&sk->sk_cookie, 0, res); if (!res) { u64 new = gen_cookie_next(&sock_cookie); atomic64_try_cmpxchg(&sk->sk_cookie, &res, new); } return res; } int sock_diag_check_cookie(struct sock *sk, const __u32 *cookie) Loading Loading
net/core/sock_diag.c +6 −6 Original line number Diff line number Diff line Loading @@ -25,14 +25,14 @@ DEFINE_COOKIE(sock_cookie); u64 __sock_gen_cookie(struct sock *sk) { while (1) { u64 res = atomic64_read(&sk->sk_cookie); if (res) return res; res = gen_cookie_next(&sock_cookie); atomic64_cmpxchg(&sk->sk_cookie, 0, res); if (!res) { u64 new = gen_cookie_next(&sock_cookie); atomic64_try_cmpxchg(&sk->sk_cookie, &res, new); } return res; } int sock_diag_check_cookie(struct sock *sk, const __u32 *cookie) Loading