Lines Matching refs:old_reuse
21 static int reuseport_resurrect(struct sock *sk, struct sock_reuseport *old_reuse,
323 struct sock_reuseport *old_reuse, *reuse; in reuseport_add_sock() local
335 old_reuse = rcu_dereference_protected(sk->sk_reuseport_cb, in reuseport_add_sock()
337 if (old_reuse && old_reuse->num_closed_socks) { in reuseport_add_sock()
339 int err = reuseport_resurrect(sk, old_reuse, reuse, reuse->bind_inany); in reuseport_add_sock()
345 if (old_reuse && old_reuse->num_socks != 1) { in reuseport_add_sock()
363 if (old_reuse) in reuseport_add_sock()
364 call_rcu(&old_reuse->rcu, reuseport_free_rcu); in reuseport_add_sock()
369 static int reuseport_resurrect(struct sock *sk, struct sock_reuseport *old_reuse, in reuseport_resurrect() argument
372 if (old_reuse == reuse) { in reuseport_resurrect()
376 __reuseport_detach_closed_sock(sk, old_reuse); in reuseport_resurrect()
377 __reuseport_add_sock(sk, old_reuse); in reuseport_resurrect()
418 __reuseport_detach_closed_sock(sk, old_reuse); in reuseport_resurrect()
422 if (old_reuse->num_socks + old_reuse->num_closed_socks == 0) in reuseport_resurrect()
423 call_rcu(&old_reuse->rcu, reuseport_free_rcu); in reuseport_resurrect()