Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 1 Jun 2007 19:06:32 +0200
From:      Thierry Herbelot <thierry@herbelot.com>
To:        freebsd-current@freebsd.org
Subject:   panic when detecting an ES1373 AudioPCI sound card
Message-ID:  <200706011906.32987.thierry@herbelot.com>

index | next in thread | raw e-mail

Hello,

The panic happens when probing the various devices of the machine (dual 
Celeron + 440BX), running the GENERIC -current kernel (with all debugging 
options) :

panic: _mtx_lock_sleep: recursed on non-recursive mutex pcm0 
@ /tank/files1/src/sys/modules/sound/driver/es137x/../../../../dev/sound/pci/es137x.c:510

cpuid = 0
KDB: enter: panic
[thread pid 0 tid 0 ]
Stopped at      kdb_enter+0x32: leave
db> where
Tracing pid 0 tid 0 td 0xc0b23e00
kdb_enter(c0a1d73c,0,c0a1c674,c1020830,0,...) at kdb_enter+0x32
panic(c0a1c674,c2555330,c0c9a40f,1fe,c242eac0,...) at panic+0x124
_mtx_lock_sleep(c242eac0,c0b23e00,0,c0c9a40f,1fe,...) at _mtx_lock_sleep+0x4a
_mtx_lock_flags(c242eac0,0,c0c9a40f,1fe,c2555450,...) at _mtx_lock_flags+0xef
eschan_setformat(c2555450,c255a2c8,10000010,66f,c2550a00,...) at 
eschan_setformat+0x3d
chn_tryspeed(c2555450,c255a2c8,c0cd04b7,c2550900,0,...) at chn_tryspeed+0x26a
chn_setformat(c2550900,10000010,c0cd4058,423,10000010,...) at 
chn_setformat+0x1f
chn_reset(c2550900,10000010,c0cd1fe6,32c,ffffffff,...) at chn_reset+0xe0
vchan_create(c2550900,ffffffff,c0cd18aa,e3,1,...) at vchan_create+0x275
pcm_setvchans(ffffffff,c25554b0,8,c256d840,c255a400,...) at 
pcm_setvchans+0x2f3
pcm_setmaxautovchans(c2510a00,7,c25552a0,c2550300,c25552a0,...) at 
pcm_setmaxautovchans+0xa2
pcm_setstatus(c2510a00,c1020a34,ffffffff,c0c9a67f,c0000002,...) at 
pcm_setstatus+0x1f
es_pci_attach(c2510a00,c250584c,c0ac4b3c,c0a1fb0f,80000000,...) at 
es_pci_attach+0x11c9
device_attach(c2510a00,c2510a00,c0a1fa65,917,c2510a00,...) at 
device_attach+0x36f
device_probe_and_attach(c2510a00,0,c1020b2c,c062ddfd,c2466680,...) at 
device_probe_and_attach+0x100
bus_generic_attach(c2466680,0,d0,c1020b20,0) at bus_generic_attach+0x19
pci_attach(c2466680,c247904c,c0ac4b3c,c0a1fb0f,80000000,...) at 
pci_attach+0x9d
device_attach(c2466680,c2466680,c0a1fa65,917,c2466680,...) at 
device_attach+0x36f
device_probe_and_attach(c2466680,c2466700,c1020bc8,c097f340,c2466700,...) at 
device_probe_and_attach+0x100
bus_generic_attach(c2466700,c0a422e8,0,c1020bbc,0) at bus_generic_attach+0x19
mptable_hostb_attach(c2466700,c24dd84c,c0ac4b3c,c0a1fb0f,80000000,...) at 
mptable_hostb_attach+0x80
device_attach(c2466700,c2466700,c0a1fa65,917,c2466700,...) at 
device_attach+0x36f
device_probe_and_attach(c2466700,10,c1020c60,c0975e37,c2466980,...) at 
device_probe_and_attach+0x100
bus_generic_attach(c2466980,0,c0a1f4d3,1,c2509686,...) at 
bus_generic_attach+0x19
legacy_attach(c2466980,c24d904c,c0ac4b3c,c0a1fb0f,80000000,...) at 
legacy_attach+0xa7
device_attach(c2466980,c2466980,c0a1fa65,917,c2466980,...) at 
device_attach+0x36f
device_probe_and_attach(c2466980,c24c2180,c1020ce8,c098064a,c24c2180,...) at 
device_probe_and_attach+0x100
bus_generic_attach(c24c2180,c25085d5,c1020d2c,c075bd5f,c24c2180,...) at 
bus_generic_attach+0x19
nexus_attach(c24c2180,c24dd04c,c0ac4b3c,c0a1fb0f,80000000,...) at 
nexus_attach+0x1a
device_attach(c24c2180,c24c2180,c0a1fa65,917,c24c2180,...) at 
device_attach+0x36f
device_probe_and_attach(c24c2180,c241bdb4,c1020d6c,c0968d2c,c0ac3464,...) at 
device_probe_and_attach+0x100
root_bus_configure(c0ac3464,c1020d88,c0709696,0,101ec00,...) at 
root_bus_configure+0x1b
configure(0,101ec00,101ec00,101e000,1028000,...) at configure+0xc
mi_startup() at mi_startup+0x96
begin() at begin+0x2c
db>                             

the card is a :
none1@pci0:17:0:        class=0x040100 card=0x4c4c4942 chip=0x50001274 
rev=0x00 hdr=0x00
    vendor     = 'Creative (Was: Ensoniq)'
    device     = 'ES1373 AudioPCI'
    class      = multimedia
    subclass   = audio

the kernel and world sources were updated this morning around Fri Jun  1 06:48 
UTC 2007. The kernel and world have been rebuilt via :
make update && make -DNO_CLEAN buildworld && make -j2 buildkernel
the source code for the specific board seems to be quite old :
FreeBSD: src/sys/dev/sound/pci/es137x.c,v 1.65 2007/04/18 18:26:39 ariff Exp

the previous kernel+world worked fine, including probing both sound cards (one 
on PCI, and the other on ISA).

The same kernel is currently running after unloading all kld modules.

	TfH


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200706011906.32987.thierry>