On Sun, Jun 17, 2001 at 12:49:34PM -0700, David Wolfskill wrote:
> Fatal trap 12: page fault while in kernel mode
> fault virtual address = 0xc
> fault code = supervisor read, page not present
> instruction pointer = 0x8:0xc018fe1a
> stack pointer = 0x10:0xce5a4d40
> frame pointer = 0x10:0xce5a4d5c
> 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 = 363 (ln)
> kernel: type 12 trap, code =0
> Stopped at dsp_clone+0xee: movl 0xc(%ebx),%edx
> db> trace
> dsp_clone(0,ce5a4dc4,3,ce5a44a8,c17ae818) at dsp_clone+0xee
> devfs_lookupx(ce5a4e24,c17ae018,1,0,cc36c760) at devfs_lookupx+0x2b1
> devfs_lookup(ce5a4e24,cd233da0,ce5a4ed0,ce5a4ea8,cc36c760) at devfs_lookup+0x31
> lookup(ce5a4ea8,cc36c87c,cc36c760,cc36c760,cc36c760) at lookup+0x291
> namei(ce5a4ea8,cc36c87c,cc36c760,2,bfbffe65) at namei+0x177
> lstat(cc36c760,ce5a4f80,bfbffdc4,bfbffe65,bfbffe5b) at lstat+0x41
> syscall(2f,2f,2f,bfbffe5b,bfbffe65) at syscall+0x71d
> syscall_with_err_pushed() at syscall_with_err_pushed+0x1b
> db> show locks
> exclusive (sleep mutex) Giant (0xc047eb20) locked @ /usr/src/sys/vm/vm_fault.c:213
> db>
I see that, too. It happens when /dev/dsp is accessed ("touch /dev/dsp" is
sufficient). I couldn't get a dump, but from looking at it in ddb and
snd_pcm.ko, it is the first line in this code:
00009e70 <dsp_clone>:
[...]
9f59: 0f b6 47 0c movzbl 0xc(%edi),%eax
9f5d: c1 e0 10 shl $0x10,%eax
9f60: 83 e2 0f and $0xf,%edx
9f63: c1 e2 04 shl $0x4,%edx
9f66: 09 d0 or %edx,%eax
9f68: 0b 45 f8 or 0xfffffff8(%ebp),%eax
which correspondends to src/sys/dev/sound/pcm/dsp.c:1031 :
pdev = makedev(SND_CDEV_MAJOR, PCMMKMINOR(unit, devtype, d->defaultchan++));
specifically, the d->defaultchan.
When this panic occurs, both edi and eax are zero.
Bye, Philipp
--
http://www.uni-karlsruhe.de/~un1i/ (,.)
\\\@@ )
\= )
cc_|\_,^
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message