Lines Matching refs:newsk

1885  *	Caller must unlock socket even in error path (bh_unlock_sock(newsk))
1892 struct sock *newsk;
1894 newsk = sk_prot_alloc(prot, priority, sk->sk_family);
1895 if (!newsk)
1898 sock_copy(newsk, sk);
1900 newsk->sk_prot_creator = prot;
1903 if (likely(newsk->sk_net_refcnt)) {
1904 get_net(sock_net(newsk));
1905 sock_inuse_add(sock_net(newsk), 1);
1907 sk_node_init(&newsk->sk_node);
1908 sock_lock_init(newsk);
1909 bh_lock_sock(newsk);
1910 newsk->sk_backlog.head = newsk->sk_backlog.tail = NULL;
1911 newsk->sk_backlog.len = 0;
1913 atomic_set(&newsk->sk_rmem_alloc, 0);
1916 refcount_set(&newsk->sk_wmem_alloc, 1);
1918 atomic_set(&newsk->sk_omem_alloc, 0);
1919 sk_init_common(newsk);
1921 newsk->sk_dst_cache = NULL;
1922 newsk->sk_dst_pending_confirm = 0;
1923 newsk->sk_wmem_queued = 0;
1924 newsk->sk_forward_alloc = 0;
1925 atomic_set(&newsk->sk_drops, 0);
1926 newsk->sk_send_head = NULL;
1927 newsk->sk_userlocks = sk->sk_userlocks & ~SOCK_BINDPORT_LOCK;
1928 atomic_set(&newsk->sk_zckey, 0);
1930 sock_reset_flag(newsk, SOCK_DONE);
1933 newsk->sk_memcg = NULL;
1935 cgroup_sk_clone(&newsk->sk_cgrp_data);
1944 is_charged = sk_filter_charge(newsk, filter);
1945 RCU_INIT_POINTER(newsk->sk_filter, filter);
1948 if (unlikely(!is_charged || xfrm_sk_clone_policy(newsk, sk))) {
1954 RCU_INIT_POINTER(newsk->sk_filter, NULL);
1955 sk_free_unlock_clone(newsk);
1956 newsk = NULL;
1959 RCU_INIT_POINTER(newsk->sk_reuseport_cb, NULL);
1961 if (bpf_sk_storage_clone(sk, newsk)) {
1962 sk_free_unlock_clone(newsk);
1963 newsk = NULL;
1970 if (sk_user_data_is_nocopy(newsk))
1971 newsk->sk_user_data = NULL;
1973 newsk->sk_err = 0;
1974 newsk->sk_err_soft = 0;
1975 newsk->sk_priority = 0;
1976 newsk->sk_incoming_cpu = raw_smp_processor_id();
1982 refcount_set(&newsk->sk_refcnt, 2);
1985 * sock (sk_refcnt_debug_inc uses newsk->sk_prot->socks, that
1994 sk_refcnt_debug_inc(newsk);
1995 sk_set_socket(newsk, NULL);
1996 sk_tx_queue_clear(newsk);
1997 RCU_INIT_POINTER(newsk->sk_wq, NULL);
1999 if (newsk->sk_prot->sockets_allocated)
2000 sk_sockets_allocated_inc(newsk);
2002 if (sock_needs_netstamp(sk) && newsk->sk_flags & SK_FLAGS_TIMESTAMP)
2005 return newsk;