lkml.org 
[lkml]   [2010]   [Apr]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    SubjectRe: [2.6.34-rc5-git6] EIP: is at inet6_csk_bind_conflict + 06xe/0xb7 [ipv6]
    From
    Date
    Le dimanche 25 avril 2010 à 18:36 +0200, Piotr Hosowicz a écrit :
    > On 25.04.2010 18:31, Sedat Dilek wrote:
    > > [ CCing netdev ML ]
    > >
    > > Confirmed: The revert-patch [1] fixes the problem here.
    >
    > I confirm, I've built a git6 kernel and it works fine.
    >
    > > See also "Bug 15847 - crash in inet6_csk_bind_conflict" [2].
    > >
    > > Feel free to add a... Tested-by: Sedat Dilek<sedat.dilek@gmail.com>
    >
    > I added created and tested phrase in my archive. ;-) Thank you a lot. I
    > hope there will be no this error in git7.
    >

    Did you test the proposed fix ?


    [PATCH] ipv6: Fix inet6_csk_bind_conflict()

    Commit fda48a0d7a84 (tcp: bind() fix when many ports are bound)
    introduced a bug on IPV6 part.
    We should not call ipv6_addr_any(inet6_rcv_saddr(sk2)) but
    ipv6_addr_any(inet6_rcv_saddr(sk)) because sk2 can be IPV4, while sk is
    IPV6.

    Reported-by: Michael S. Tsirkin <mst@redhat.com>
    Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
    ---
    diff --git a/net/ipv6/inet6_connection_sock.c b/net/ipv6/inet6_connection_sock.c
    index b4b7d40..3a4d92b 100644
    --- a/net/ipv6/inet6_connection_sock.c
    +++ b/net/ipv6/inet6_connection_sock.c
    @@ -48,7 +48,7 @@ int inet6_csk_bind_conflict(const struct sock *sk,
    ipv6_rcv_saddr_equal(sk, sk2))
    break;
    else if (sk->sk_reuse && sk2->sk_reuse &&
    - !ipv6_addr_any(inet6_rcv_saddr(sk2)) &&
    + !ipv6_addr_any(inet6_rcv_saddr(sk)) &&
    ipv6_rcv_saddr_equal(sk, sk2))
    break;
    }

    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2010-04-25 18:43    [W:3.056 / U:0.036 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site