Date: Mon, 3 Apr 2006 10:54:00 +0100 (BST) From: Robert Watson <rwatson@FreeBSD.org> To: Ganbold <ganbold@micom.mng.net> Cc: freebsd-current@freebsd.org Subject: Re: page fault on today's CURRENT (tcp_usr_accept) Message-ID: <20060403105231.D76562@fledge.watson.org> In-Reply-To: <4430DF4E.1060600@micom.mng.net> References: <4430DF4E.1060600@micom.mng.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 3 Apr 2006, Ganbold wrote: > I've got page fault on today's CURRENT. After looking at tcp_usr_accept(), I certainly see *a* bug, which might be the one you've run into. I've committed what I believe is the fix as tcp_usrreq.c:1.134. Could you pull that down and see if life gets better? Basically, there was erroneous handling of a connection that has been disconnected while sitting in the accept queue before the application manages to call accept() on it (indeed, a race). Robert N M Watson > > Fatal trap 12: page fault while in kernel mode > fault virtual address = 0xa0 > fault code = supervisor write, page not > present > instructon pointer = 0x20: 0xc062bbde > stack pointer = 0x28: 0xcc8efc10 > frame pointer = 0x28: 0xcc8efc2c > code segment = base 0x0, limit 0xfffff, type > 0x1b > =DPL 0, pres 1, def32 1, > gran 1 > processor eflags = interrupt enabled, resume, IOPL = 0 > current process = 435 (smbd) > [thread pid 435 tid 100039] > stopped at tcp_usr_accept+0xd6: cmpxchgl %ecx, 0xa0(%ebx) > > I'm running samba (samba-3.0.21b,1) on this test machine and there is no > load. > > FreeBSD gw.micom.mng.net 7.0-CURRENT FreeBSD 7.0-CURRENT #16: Mon Apr 3 > 14:15:48 ULAST 2006 tsgan@gw.micom.mng.net:/usr/obj/usr/src/sys/GW i386 > > Ganbold > > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060403105231.D76562>