Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 27 Aug 2013 12:09:38 +0400
From:      "Andrey V. Elsukov" <bu7cher@yandex.ru>
To:        Craig Rodrigues <rodrigc@FreeBSD.org>
Cc:        freebsd-net@freebsd.org, bms@freebsd.org, lwhsu@freebsd.org
Subject:   Re: devel/jenkins port not starting. Kernel panic in IPv6 multicast code
Message-ID:  <521C5EC2.1060901@yandex.ru>
In-Reply-To: <CAG=rPVfzUW1pPxocdTJWGFeUyJ9tuOdURgaLm8O0Bx%2BBKNUGCQ@mail.gmail.com>
References:  <CAG=rPVfzUW1pPxocdTJWGFeUyJ9tuOdURgaLm8O0Bx%2BBKNUGCQ@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enig1C98A100C131DF04096A6AEA
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On 27.08.2013 01:07, Craig Rodrigues wrote:
> Hi,
>=20
> On box 2, since I this is a debug kernel with WITNESS and INVARIANTS
> enabled, I get a kernel panic.  (see attached core.txt.gz)

It seems the log was stripped by maillist.

> The panic occurs here on line 1779:
>=20
>    1768 static struct ifnet *
>    1769 in6p_lookup_mcast_ifp(const struct inpcb *in6p,
>    1770     const struct sockaddr_in6 *gsin6)
>    1771 {
>    1772         struct route_in6         ro6;
>    1773         struct ifnet            *ifp;
>    1774
>    1775         KASSERT(in6p->inp_vflag & INP_IPV6,
>    1776             ("%s: not INP_IPV6 inpcb", __func__));
>    1777         KASSERT(gsin6->sin6_family =3D=3D AF_INET6,
>    1778             ("%s: not AF_INET6 group", __func__));
>    1779         KASSERT(IN6_IS_ADDR_MULTICAST(&gsin6->sin6_addr),
>    1780             ("%s: not multicast", __func__));
>=20
> If I look at gsin6->sin6_addr inside kgdb,
> I see:
>=20
> (kgdb) p gsin6->sin6_addr
> $1 =3D {__u6_addr =3D {__u6_addr8 =3D
> "\000\000\000\000\000\000\000\000\000\000=EF=BF=BD=EF=BF=BD=EF=BF=BDM|=EF=
=BF=BD", __u6_addr16 =3D {0, 0, 0,
> 0, 0, 65535, 19951, 54652}, __u6_addr32 =3D {0, 0,
>       4294901760, 3581693423}}}
>=20
>=20
> I am not so familiar with this part of the networking code.
> Can someone recommend where is the best place to fix
> this would be?

AFAIR, I already saw similar report here.
This is V4 mapped IPv6 address ::ffff:239.77.124.213.
I guess application is trying to use setsockopt with IPV6_JOIN_GROUP
option. And since outgoing interface isn't specified, the kernel is
trying to determine it from routing table. But this mapped address
triggers assert in in6p_lookup_mcast_ifp() function. It seems to me,
that v4mapped addresses isn't supported in the multicast code. If you
remove KASSERT from in6p_lookup_mcast_ifp(), this address will be
treated as invalid later.

--=20
WBR, Andrey V. Elsukov


--------------enig1C98A100C131DF04096A6AEA
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (FreeBSD)

iQEcBAEBAgAGBQJSHF7IAAoJEAHF6gQQyKF6BVEIAJFM89HyzlmLQm9ybqPJafDU
Rj1v5ePz+uf5gXXJiVQGCrTTydvm/SJyIITybZ6g/fSbxZkgu9hXDm8fKtuppVU3
hvhJWlQVTVHw/Khr8/HUXMHdYnEk04K3yTRP5B/wcoPAyh9bO3usrcHboFE8dqWY
fmubgNjNhIylBfeOi7lDh3i4li1NQH4xgck/gJ+kePmkqrJxu05f/umRn28s7xyj
ndAes6gIifV5729Vli6lmS0t95SXXcwPQk+x4b0krDuVRDmgUORXLNC4v/co2PFx
BioxSsEzk8N1I06NvTdfD9it4uUMdyNO1OyeztkejZsPzKAXD+CwuDF1G/+qe8Q=
=icq3
-----END PGP SIGNATURE-----

--------------enig1C98A100C131DF04096A6AEA--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?521C5EC2.1060901>