Re: NDIS panic: _mtx_lock_sleep: recursed on non-recursive mutex

From: Maxim Maximov <mcsi_at_mcsi.pp.ru>
Date: Wed, 16 Mar 2005 21:35:57 +0300
Doug Barton wrote:
> I'm getting the following panic with the latest -current as soon as the 
> ndis module loads in response to an 'ifconfig ndis0 up' command:
> 
> panic: _mtx_lock_sleep: recursed on non-recursive mutex ndis softc lock 
> _at_ /usr/local/src/sys/modules/ndis/../../compat/ndis/kern_ndis.c:1463
> 
> Doug
> 

Same here:

(kgdb) bt
#0  doadump () at pcpu.h:164
#1  0xc049337e in db_fncall (dummy1=0, dummy2=0, dummy3=-1065288661, 
dummy4=0xd57c7960 "\214y|у\204ъ\200юxy|у|y|у\220\a")
     at /usr/src/sys/ddb/db_command.c:531
#2  0xc049318c in db_command (last_cmdp=0xc099eb04, cmd_table=0x0, 
aux_cmd_tablep=0xc08c5054, aux_cmd_tablep_end=0xc08c5070)
     at /usr/src/sys/ddb/db_command.c:349
#3  0xc0493254 in db_command_loop () at /usr/src/sys/ddb/db_command.c:455
#4  0xc0494dd9 in db_trap (type=3, code=0) at /usr/src/sys/ddb/db_main.c:221
#5  0xc06769a4 in kdb_trap (type=3, code=0, tf=0xd57c7aa4) at 
/usr/src/sys/kern/subr_kdb.c:421
#6  0xc082a5f4 in trap (frame=
       {tf_fs = -713293800, tf_es = -1066991600, tf_ds = -1064763376, 
tf_edi = -1064730214, tf_esi = 1, tf_ebp = -713262364, tf_isp = 
-713262384, tf_ebx = -713262320, tf_edx = 0, tf_ecx = -1056755712, 
tf_eax = 18, tf_trapno = 3, tf_err = 0, tf_eip = -1066965237, tf_cs = 8, 
tf_eflags = 662, tf_esp = -713262332, tf_ss = -1067062701}) at 
/usr/src/sys/i386/i386/trap.c:573
#7  0xc08186ba in calltrap () at /usr/src/sys/i386/i386/exception.s:139
#8  0xd57c0018 in ?? ()
#9  0xc0670010 in config_intrhook_disestablish (hook=0x0) at 
/usr/src/sys/kern/subr_autoconf.c:108
#10 0xc065ea53 in panic (fmt=0xc089819a "_mtx_lock_sleep: recursed on 
non-recursive mutex %s _at_ %s:%d\n") at /usr/src/sys/kern/kern_shutdown.c:538
#11 0xc0656f72 in _mtx_lock_sleep (m=0xc1d13da8, td=0xc1bbe730, opts=0, 
file=0xc08b51c2 "/usr/src/sys/compat/ndis/kern_ndis.c", line=1463)
     at /usr/src/sys/kern/kern_mutex.c:447
#12 0xc0656c91 in _mtx_lock_flags (m=0xc1d13da8, opts=0, file=0xc08b51c2 
"/usr/src/sys/compat/ndis/kern_ndis.c", line=1463)
     at /usr/src/sys/kern/kern_mutex.c:273
#13 0xc07e1926 in ndis_init_nic (arg=0x0) at 
/usr/src/sys/compat/ndis/kern_ndis.c:1463
#14 0xc07f9ce4 in ndis_init (xsc=0xc1d13000) at 
/usr/src/sys/dev/if_ndis/if_ndis.c:1472
#15 0xc07fab3f in ndis_ioctl (ifp=0xc1d13000, command=2149607696, 
data=0xc1f55a40 "ndis0") at /usr/src/sys/dev/if_ndis/if_ndis.c:2100
#16 0xc06c3760 in ifhwioctl (cmd=2149607696, ifp=0xc1d13000, 
data=0xc1f55a40 "ndis0", td=0x0) at /usr/src/sys/net/if.c:1199
#17 0xc06c3fb7 in ifioctl (so=0xc200014c, cmd=2149607696, 
data=0xc1f55a40 "ndis0", td=0xc1bbe730) at /usr/src/sys/net/if.c:1433
#18 0xc0687cf7 in soo_ioctl (fp=0x0, cmd=2149607696, data=0xc1f55a40, 
active_cred=0xc1f6f800, td=0xc1bbe730) at /usr/src/sys/kern/sys_socket.c:214
#19 0xc0682470 in ioctl (td=0xc1bbe730, uap=0xd57c7d14) at file.h:258
#20 0xc082adab in syscall (frame=
       {tf_fs = 47, tf_es = -2139619281, tf_ds = -1078001617, tf_edi = 
-1077944560, tf_esi = -2145359600, tf_ebp = -1077944600, tf_isp = 
-713261708, tf_ebx = -1077944560, tf_edx = 0, tf_ecx = 10, tf_eax = 54, 
tf_trapno = 12, tf_err = 2, tf_eip = 673557499, tf_cs = 31, tf_eflags = 
514, tf_esp = -1077944644, tf_ss = 47}) at /usr/src/sys/i386/i386/trap.c:951
#21 0xc081870f in Xint0x80_syscall () at 
/usr/src/sys/i386/i386/exception.s:200


-- 
Maxim Maximov
Received on Wed Mar 16 2005 - 17:36:06 UTC

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