Re: Panic with locks and networking as of a day ago

From: Sam Leffler <sam_at_errno.com>
Date: Fri, 31 Oct 2003 21:44:03 -0800
On Friday 31 October 2003 07:49 pm, Doug Ambrisko wrote:
> I'm getting this panic a fair amount when dhclient is running on with the
> an(4) driver.  My Atheros based card appears to have broke so I can't
> use that now (it doesn't work in Windows either).  Here is the dmesg:
>
>   lock order reversal
>    1st 0xc2ebaf08 vm object (vm object) _at_ vm/swap_pager.c:1319
>    2nd 0xc0735600 swap_pager swhash (swap_pager swhash) _at_
> vm/swap_pager.c:1835 3rd 0xc103565c vm object (vm object) _at_
> vm/uma_core.c:876
>   Stack backtrace:
>
>
>   Fatal trap 12: page fault while in kernel mode
>   fault virtual address   = 0x4
>   fault code              = supervisor read, page not present
>   instruction pointer     = 0x8:0xc0595952
>   stack pointer           = 0x10:0xd0135a40
>   frame pointer           = 0x10:0xd0135afc
>   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         = 854 (ssh)
>   trap number             = 12
>   panic: page fault
>
>   syncing disks, buffers remaining... panic: sleeping thread (pid 854) owns
> a mute x
>   Uptime: 10m22s
>   Dumping 255 MB
>    16 32 48 64 80 96 112 128 144 160 176 192 208 224 240
>
> and the trace is:
>   kgdb) where
>   #0  doadump () at ../../../kern/kern_shutdown.c:240
>   #1  0xc050f61c in boot (howto=260) at ../../../kern/kern_shutdown.c:372
>   #2  0xc050f9a7 in panic () at ../../../kern/kern_shutdown.c:550
>   #3  0xc05057db in propagate_priority (td=0x0) at
> ../../../kern/kern_mutex.c:124 #4  0xc0505fe9 in _mtx_lock_sleep
> (m=0xc072a76c, opts=0,
>       file=0xc06aa995 "../../../netinet/tcp_timer.c", line=489)
>       at ../../../kern/kern_mutex.c:635
>   #5  0xc0505a37 in _mtx_lock_flags (m=0xc072a76c, opts=0,
>       file=0xc06aa995 "../../../netinet/tcp_timer.c", line=489)
>       at ../../../kern/kern_mutex.c:333
>   #6  0xc05a1f10 in tcp_timer_rexmt (xtp=0xc3116164)
>       at ../../../netinet/tcp_timer.c:489
>   #7  0xc051fea8 in softclock (dummy=0x0) at
> ../../../kern/kern_timeout.c:225 #8  0xc04fb802 in ithread_loop
> (arg=0xc16c1c80)
>       at ../../../kern/kern_intr.c:540
>   #9  0xc04fa804 in fork_exit (callout=0xc04fb670 <ithread_loop>, arg=0x0,
>       frame=0x0) at ../../../kern/kern_fork.c:793
>   (kgdb)
>
> I have the core so I can run other commands if needed.
>

This is new.  Please contact me offline with a way to collect the kernel+core.

> BTW before that update to -current I was getting panics when I would
> insert or remove a card.  Dhclient would end up being the process
> running and the kernel would crash in in_pcbconnect_setup when it did
> this check:
> 	if (ro->ro_rt && !(ro->ro_rt->rt_ifp->if_flags & IFF_LOOPBACK))
> The ro->ro_rt->rt_ifp would be pointing the the ifp that was gone
> and panic.  This one wasn't to bad except for crashing during a suspend/
> resume sequence the other panic is happening randomly through the day.
>

I have a line on this one and should have a fix soon.

	Sam
Received on Fri Oct 31 2003 - 20:42:25 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:27 UTC