Re: page fault on today's CURRENT (tcp_usr_accept)

From: Ganbold <ganbold_at_micom.mng.net>
Date: Mon, 03 Apr 2006 18:57:51 +0900
Robert Watson wrote:
>
> 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).
I see, I'll try it tomorrow and let you know if there is anything.

thanks,

Ganbold
>
> 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_at_gw.micom.mng.net:/usr/obj/usr/src/sys/GW  i386
>>
>> Ganbold
>>
>>
>>
>
>
>
Received on Mon Apr 03 2006 - 07:57:40 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:54 UTC