bpf, sk_msg: Let ULP restore sk_proto and write_space callback
We don't need a fallback for when the socket is not using ULP. tcp_update_ulp handles this case exactly the same as we do in sk_psock_restore_proto. Get rid of the duplicated code. Signed-off-by: Jakub Sitnicki <jakub@cloudflare.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Acked-by: John Fastabend <john.fastabend@gmail.com> Link: https://lore.kernel.org/bpf/20200217121530.754315-2-jakub@cloudflare.com
This commit is contained in:
parent
b80b033bed
commit
a4393861a3
|
@ -361,16 +361,7 @@ static inline void sk_psock_restore_proto(struct sock *sk,
|
|||
sk->sk_prot->unhash = psock->saved_unhash;
|
||||
|
||||
if (psock->sk_proto) {
|
||||
struct inet_connection_sock *icsk = inet_csk(sk);
|
||||
bool has_ulp = !!icsk->icsk_ulp_data;
|
||||
|
||||
if (has_ulp) {
|
||||
tcp_update_ulp(sk, psock->sk_proto,
|
||||
psock->saved_write_space);
|
||||
} else {
|
||||
sk->sk_prot = psock->sk_proto;
|
||||
sk->sk_write_space = psock->saved_write_space;
|
||||
}
|
||||
tcp_update_ulp(sk, psock->sk_proto, psock->saved_write_space);
|
||||
psock->sk_proto = NULL;
|
||||
} else {
|
||||
sk->sk_write_space = psock->saved_write_space;
|
||||
|
|
Loading…
Reference in New Issue