Hi all,

Today's linux-next merge of the net-next tree got conflicts in
net/ipv4/tcp_ipv4.c and net/ipv6/tcp_ipv6.c between commit d0c294c53a77
("tcp: prevent fetching dst twice in early demux code") from the  tree
and commit f7e4eb03f9d9 ("inet: ip early demux should avoid request
sockets") from the net-next tree.

I fixed it up (see below) and can carry the fix as necessary (no action
is required).

-- 
Cheers,
Stephen Rothwell                    [email protected]

diff --cc net/ipv4/tcp_ipv4.c
index f1756ee02207,4e90217003e8..000000000000
--- a/net/ipv4/tcp_ipv4.c
+++ b/net/ipv4/tcp_ipv4.c
@@@ -1517,8 -1521,8 +1521,8 @@@ void tcp_v4_early_demux(struct sk_buff 
        if (sk) {
                skb->sk = sk;
                skb->destructor = sock_edemux;
-               if (sk->sk_state != TCP_TIME_WAIT) {
+               if (sk_fullsock(sk)) {
 -                      struct dst_entry *dst = sk->sk_rx_dst;
 +                      struct dst_entry *dst = READ_ONCE(sk->sk_rx_dst);
  
                        if (dst)
                                dst = dst_check(dst, 0);
diff --cc net/ipv6/tcp_ipv6.c
index b283a498f7a4,4a4e6d30c448..000000000000
--- a/net/ipv6/tcp_ipv6.c
+++ b/net/ipv6/tcp_ipv6.c
@@@ -1584,8 -1544,8 +1544,8 @@@ static void tcp_v6_early_demux(struct s
        if (sk) {
                skb->sk = sk;
                skb->destructor = sock_edemux;
-               if (sk->sk_state != TCP_TIME_WAIT) {
+               if (sk_fullsock(sk)) {
 -                      struct dst_entry *dst = sk->sk_rx_dst;
 +                      struct dst_entry *dst = READ_ONCE(sk->sk_rx_dst);
  
                        if (dst)
                                dst = dst_check(dst, 
inet6_sk(sk)->rx_dst_cookie);

Attachment: pgpMp5PDjEiKC.pgp
Description: OpenPGP digital signature

Reply via email to