From patchwork Mon Sep 18 16:28:55 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [1/3] net: set tb->fast_sk_family X-Patchwork-Submitter: Josef Bacik X-Patchwork-Id: 815031 X-Patchwork-Delegate: davem@davemloft.net Message-Id: <1505752137-15522-2-git-send-email-jbacik@fb.com> To: davem@davemloft.net, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, crobinso@redhat.com, labbott@redhat.com, kernel-team@fb.com Cc: Josef Bacik , stable@vger.kernel.org Date: Mon, 18 Sep 2017 12:28:55 -0400 From: josef@toxicpanda.com List-Id: From: Josef Bacik We need to set the tb->fast_sk_family properly so we can use the proper comparison function for all subsequent reuseport bind requests. Cc: stable@vger.kernel.org Fixes: 637bc8bbe6c0 ("inet: reset tb->fastreuseport when adding a reuseport sk") Reported-and-tested-by: Cole Robinson Signed-off-by: Josef Bacik --- net/ipv4/inet_connection_sock.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/net/ipv4/inet_connection_sock.c b/net/ipv4/inet_connection_sock.c index b9c64b40a83a..f87f4805e244 100644 --- a/net/ipv4/inet_connection_sock.c +++ b/net/ipv4/inet_connection_sock.c @@ -328,6 +328,7 @@ int inet_csk_get_port(struct sock *sk, unsigned short snum) tb->fastuid = uid; tb->fast_rcv_saddr = sk->sk_rcv_saddr; tb->fast_ipv6_only = ipv6_only_sock(sk); + tb->fast_sk_family = sk->sk_family; #if IS_ENABLED(CONFIG_IPV6) tb->fast_v6_rcv_saddr = sk->sk_v6_rcv_saddr; #endif @@ -354,6 +355,7 @@ int inet_csk_get_port(struct sock *sk, unsigned short snum) tb->fastuid = uid; tb->fast_rcv_saddr = sk->sk_rcv_saddr; tb->fast_ipv6_only = ipv6_only_sock(sk); + tb->fast_sk_family = sk->sk_family; #if IS_ENABLED(CONFIG_IPV6) tb->fast_v6_rcv_saddr = sk->sk_v6_rcv_saddr; #endif