Date: Fri, 15 May 2009 17:36:18 +0200 From: Martin <nakal@web.de> To: John Baldwin <jhb@freebsd.org> Cc: freebsd-stable@freebsd.org Subject: Re: kernel trap 12 with interrupts disabled [bge0 on 7.2R] Message-ID: <20090515173618.78cca743@zelda.local> In-Reply-To: <200905150815.19452.jhb@freebsd.org> References: <1696198956@web.de> <200905140916.40594.jhb@freebsd.org> <20090514191026.0a90dbfc@zelda.local> <200905150815.19452.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi John,
one more thing that I noticed. It seems that the netmask passed to the
procedure rt_maskedcopy is invalid. Cannot dereference the pointer.
I went one frame up and I've looked at the control flow of the parent
routine rtrequest1_fib. This routine passes the netmask, but before it
does that it went with req=11 (RTM_RESOLVE) through this piece of code:
/usr/src/sys/net/route.c:985
case RTM_RESOLVE:
if (ret_nrt == NULL || (rt = *ret_nrt) == NULL)
senderr(EINVAL);
ifa = rt->rt_ifa;
/* XXX locking? */
flags = rt->rt_flags &
~(RTF_CLONING | RTF_STATIC);
flags |= RTF_WASCLONED;
gateway = rt->rt_gateway;
if ((netmask = rt->rt_genmask) == NULL)
flags |= RTF_HOST;
goto makeroute;
Is this a locking problem?
--
Martin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090515173618.78cca743>
