pcm(4) related panic
Artur Poplawski
artur at szuruburu.neostrada.pl
Tue Nov 25 07:16:38 PST 2003
Hello,
On a 5.1-RELEASE and 5.2-BETA machines I have been able to cause a panic
like this:
(watch out for folded lines; the stack backtrace below is rewritten by
hand from ddb)
lock order reversal
1st 0xc22a45ac vm object (vm object) @ /usr/src/sys/vm/swap_pager.c:1323
2nd 0xc06c0420 swap_pager swhash (swap_pager swhash) @ \
/usr/src/sys/vm/swap_pager.c:1838
3rd 0xc0c358c4 vm object (vm object) @ /usr/src/sys/vm/uma_core.c:876
Stack backtrace:
backtrace
witness_lock
_mtx_lock_flags
obj_allock
slab_zalloc
uma_zone_slab
uma_zalloc_internal
uma_zalloc_arg
swp_pager_meta_build
swap_pager_putpages
default_pager_putpages
vm_pageout_flush
vm_pageout_clean
vm_pageout_scan
vm_pageout
fork_exit
fork_trampoline
Sleeping on "swread" with the following non-sleepable locks held:
exclusive sleep mutex pcm0:play:0 (pcm channel) r = 0 (0xc1c3d740) locked @ \
/usr/src/sys/dev/sound/pcm/dsp.c:146
panic: sleeping thread (pid 583) owns a non-sleepable lock
syncing disks, buffers remaining... 1410 1410 panic: mi_switch: \
switch in a critical section
Uptime: 1m45s
panic: msleep
Uptime: 1m45s
panic: msleep
Uptime: 1m45s
panic: msleep
Uptime: 1m45s
panic: msleep
[... repeated few more times]
Fatal double fault:
eip = 0xc05e3916
esp = 0xc8db8ff4
ebp = 0xc8db9004
panic: double fault
Uptime: 1m45s
panic: msleep
Uptime: 1m45s
panic: msleep
Uptime: 1m45s
panic: msleep
Uptime: 1m45s
[...]
And the machine suddenly reboots, so there is no coredump.
eip address points close to:
c05e3910 T sc_vtb_putc
To reproduce this panic just start some audio player app (like xmms),
and launch countless memory-eating applications (like mozilla ;>).
The machine starts swapping, and it panics.
% uname -a
FreeBSD kaszanka.domek 5.2-BETA FreeBSD 5.2-BETA #0: Sun Nov 23 01:23:10\
CET 2003 artur at kaszanka.domek:/usr/obj/usr/src/sys/KASZANKA i386
dmesg fragments:
CPU: AMD Athlon(tm) XP 2000+ (1666.73-MHz 686-class CPU)
pcm0: <AudioPCI ES1373-B> port 0xec00-0xec3f irq 10 at device 8.0 on pci0
pcm0: <Cirrus Logic CS4297A AC97 Codec>
rl0: <RealTek 8139 10/100BaseTX> port 0xe800-0xe8ff mem \
0xdfffff00-0xdfffffff ir
q 10 at device 10.0 on pci0
miibus0: <MII bus> on rl0
rlphy0: <RealTek internal media interface> on miibus0
rlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
rl1: <RealTek 8139 10/100BaseTX> port 0xe400-0xe4ff mem \
0xdffffe00-0xdffffeff ir
q 10 at device 11.0 on pci0
rlphy1: <RealTek internal media interface> on miibus1
rlphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
Regards, Artur
More information about the freebsd-current
mailing list