Re: page fault panic tracked down (selwakeuppri())

From: Don Lewis <truckman_at_FreeBSD.org>
Date: Tue, 6 Jan 2004 12:01:57 -0800 (PST)
On  6 Jan, Stefan Ehmann wrote:
> On Tue, 2004-01-06 at 20:05, Don Lewis wrote:
>> On  6 Jan, Stefan Ehmann wrote:
>> 
>> > I'm also still not sure why I got three "bad bufsize" panics in a row
>> > all of the sudden instead of page faults. (Most of the previous kernels
>> > were built without INVARIANTS - but at least some with).
>> 
>> I forgot that historially the kernel options were not used when building
>> modules.  I think they are used right now, and were used for a while in
>> the recent past.
> 
> Finally found out in the handbook why debugging of the modules didn't
> work and now got it right it seems.
> 
> #0  doadump () at /usr/src/sys/kern/kern_shutdown.c:240
> #1  0xc04e5178 in boot (howto=256) at
> /usr/src/sys/kern/kern_shutdown.c:372
> #2  0xc04e5507 in panic () at /usr/src/sys/kern/kern_shutdown.c:550
> #3  0xc07eb648 in feed_vchan_s16 (f=0xc3967c00, c=0x0, b=0xc37d0000 "", 
>     count=2048, source=0xc3741500) at
> /usr/src/sys/dev/sound/pcm/vchan.c:80

It is somewhat worrysome that c is 0x0 here, since it should be the same
as channel in frame #4.  Maybe a gdb oops?

Print *src in this frame, the KASSERT is apparently failing because the
bufsize member of this structure is not the same as the count parameter.

> #4  0xc07e1c6d in sndbuf_feed (from=0xc3741500, to=0xc3741600, 
>     channel=0xc37a8880, feeder=0xc3967c00, count=3279164672) at
> feeder_if.h:60

Also, print *channel in this frame.  I'd like to see what flags are set.
Received on Tue Jan 06 2004 - 11:02:16 UTC

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