kern/104765: kernel panic 6.2 prerelease-20061017 amd64
Kai Gallasch
gallasch at free.de
Tue Nov 14 15:37:41 UTC 2006
Robert Watson wrote:
> Synopsis: kernel panic 6.2 prerelease-20061017 amd64
>
> Responsible-Changed-From-To: freebsd-bugs->rwatson
> Responsible-Changed-By: rwatson
> Responsible-Changed-When: Tue Nov 14 10:05:50 UTC 2006
> Responsible-Changed-Why:
> Claim ownership, since I've been looking at issues similar or identical
> to this. Some questions:
>
> (1) Could you let me know what versions of ip_output.c and tcp_usrreq.c
> you're running with?
/usr/src/sys/netinet/ip_output.c
* @(#)ip_output.c 8.3 (Berkeley) 1/21/94
* $FreeBSD: src/sys/netinet/ip_output.c,v 1.242.2.16 2006/10/24 13:23:03
rwatson Exp $
/usr/src/sys/netinet/tcp_usrreq.c
* From: @(#)tcp_usrreq.c 8.2 (Berkeley) 1/3/94
* $FreeBSD: src/sys/netinet/tcp_usrreq.c,v 1.124.2.3 2006/09/27 09:24:44
mux Exp $
>
> (2) Could you try the most recent patch attached to PR 102412? This is
> a patch to ip_ctloutput(). I've attached it below, but the chances
> are good that GNATS will mangle the patch.
ok, I will apply the patch and rebuild.
# cat /boot/loader.conf
debug.mpsafenet=0
If I recompile and reboot - Should I set debug.mpsafenet=1 ?(which is
its default value) Since I set this value to 0 the server didn't crash
and reached 10 days uptime.
>
> Index: ip_output.c
> ===================================================================
> RCS file: /home/ncvs/src/sys/netinet/ip_output.c,v
> retrieving revision 1.242.2.16
> diff -u -r1.242.2.16 ip_output.c
> --- ip_output.c 24 Oct 2006 13:23:03 -0000 1.242.2.16
> +++ ip_output.c 26 Oct 2006 18:20:55 -0000
> @@ -1155,6 +1155,7 @@
> struct sockopt *sopt;
> {
> struct inpcb *inp = sotoinpcb(so);
> + struct inpcbinfo *pcbinfo = inp->inp_pcbinfo;
> int error, optval;
>
> error = optval = 0;
> @@ -1190,12 +1191,15 @@
> m_free(m);
> break;
> }
> + INP_INFO_WLOCK(pcbinfo);
> if (so->so_pcb == NULL) {
> + INP_INFO_WUNLOCK(pcbinfo);
> m_free(m);
> error = EINVAL;
> break;
> }
> INP_LOCK(inp);
> + INP_INFO_WUNLOCK(pcbinfo);
> error = ip_pcbopts(inp, sopt->sopt_name, m);
> INP_UNLOCK(inp);
> return (error);
>
>
> http://www.freebsd.org/cgi/query-pr.cgi?pr=104765
> _______________________________________________
> freebsd-bugs at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-bugs
> To unsubscribe, send any mail to "freebsd-bugs-unsubscribe at freebsd.org"
More information about the freebsd-bugs
mailing list