Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 28 Nov 2018 09:29:36 +0000
From:      bugzilla-noreply@freebsd.org
To:        net@FreeBSD.org
Subject:   [Bug 227720] Kernel panic in ppp server
Message-ID:  <bug-227720-7501-XvIXePUkHx@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-227720-7501@https.bugs.freebsd.org/bugzilla/>
References:  <bug-227720-7501@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D227720

--- Comment #40 from Andrey V. Elsukov <ae@FreeBSD.org> ---
(In reply to Franck Rousseau from comment #37)
> Thanks for the fast reply! Not sure if I continue here or in bug #230498 =
but
> since this is still related to PPP, I put it here.
>=20
> I only had 15 min to test, but it crashed right away on the first try. He=
re
> is the procedure:
> - setup PC3: configure address on Ethernet interface;
> - setup PC2: configure address on Ethernet interface, add ARP pub entry,
> activate forwarding, start ppp server and wait for connection;
> - setup PC3: start pinging PC3, obviously it fails, start ppp client and
> open connection, add default route, everything works correctly.
> Leave everything running as it is, then quit ppp on both sides, restart t=
he
> server waiting for the connection, connect from client -> crash on PC2.
>=20
> Here is the trace, it crashes one call further line rtsock.c:1559 after t=
he
> patch
>=20
>  	info.rti_info[RTAX_GENMASK] =3D 0;
>  	if (rt->rt_ifp) {
> -		info.rti_info[RTAX_IFP] =3D rt->rt_ifp->if_addr->ifa_addr;
> +		IF_ADDR_RLOCK(rt->rt_ifp);
> +		if (rt->rt_ifp->if_addr !=3D NULL)
> +			info.rti_info[RTAX_IFP] =3D rt->rt_ifp->if_addr->ifa_addr;
>  		info.rti_info[RTAX_IFA] =3D rt->rt_ifa->ifa_addr;

If this patch is full version that you used, you missed IF_ADDR_RUNLOCK() h=
ere,
and this is why it panics.

> #8  0xffffffff80af2893 in __rw_rlock_hard (rw=3D0xfffff800be4bc990,
> td=3D0xfffff80105056620, v=3D<value optimized out>) at
> /usr/src/sys/kern/kern_rwlock.c:493
> #9  0xffffffff80c0ce9b in sysctl_dumpentry (rn=3D0xfffff80008e74270,
> vw=3D0xfffffe0468486690) at /usr/src/sys/net/rtsock.c:1559

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-227720-7501-XvIXePUkHx>