On Tue, Oct 25, 2016 at 6:08 PM, Craig Gallek <kraigatg...@gmail.com> wrote: > From: Craig Gallek <kr...@google.com> > > As part of a series to implement faster SO_REUSEPORT lookups, > commit 086c653f5862 ("sock: struct proto hash function may error") > added return values to protocol hash functions and > commit 496611d7b5ea ("inet: create IPv6-equivalent inet_hash function") > implemented a new hash function for IPv6. However, the latter does > not respect the former's convention. > > This properly propagates the hash errors in the IPv6 case. > > Fixes: 496611d7b5ea ("inet: create IPv6-equivalent inet_hash function") > Reported-by: Soheil Hassas Yeganeh <soh...@google.com> > Signed-off-by: Craig Gallek <kr...@google.com> Acked-by: Soheil Hassas Yeganeh <soh...@google.com>
> --- > net/ipv6/inet6_hashtables.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/net/ipv6/inet6_hashtables.c b/net/ipv6/inet6_hashtables.c > index 2fd0374a35b1..02761c9fe43e 100644 > --- a/net/ipv6/inet6_hashtables.c > +++ b/net/ipv6/inet6_hashtables.c > @@ -264,13 +264,15 @@ EXPORT_SYMBOL_GPL(inet6_hash_connect); > > int inet6_hash(struct sock *sk) > { > + int err = 0; > + > if (sk->sk_state != TCP_CLOSE) { > local_bh_disable(); > - __inet_hash(sk, NULL, ipv6_rcv_saddr_equal); > + err = __inet_hash(sk, NULL, ipv6_rcv_saddr_equal); > local_bh_enable(); > } > > - return 0; > + return err; > } > EXPORT_SYMBOL_GPL(inet6_hash); Thanks for the fix! > -- > 2.8.0.rc3.226.g39d4020 >