page fault panic tracked down (selwakeuppri())

Stefan Ehmann shoesoft at
Sun Jan 4 06:50:21 PST 2004

On Sat, 2004-01-03 at 05:01, Don Lewis wrote:
> I wouldn't rule out the dsp, since you audio player software may be
> calling select() on the fd for the audio device.  You might want to back
> out Bruce's quick hack and change the second argument to selwakeuppri()
> to -1 in chn_wakeup() in dev/sound/pcm/channel.c.
> Is your kernel compiled with the INVARIANTS and INVARIANTS_SUPPORT
> options?
> Something else that I noticed is that the CHN_LOCKASSERT macro has an
> empty definition in dev/sound/pcm/channel.h.  You might want to try
> defining it as
> 	mtx_assert((struct mtx *)((c)->lock), MA_OWNED)
> I still don't see any obvious cause for this problem.

I took out the debug options because it was just too slow. Put back
INVARIANTS (but no WITNESS) now and speed is nice again.

Applied your suggested changes which resulted in a panic. No
assertations were triggered though.

More information about the freebsd-current mailing list