Apparently, On Mon, Feb 18, 2002 at 12:43:18PM -0800,
        Matthew Dillon said words to the effect of;

> :What John's patch does is spin while the lock owner is running on another cpu.
> :Spinning while there are no other processes on the run queues as well makes sense
> :but you'll also be doing a lot of acquires and releases of sched_lock.
> :
> :The only thing that jumped out at me looking at the patch is that critnest cannot
> :be 0 here because the sched_lock is held; holding a spin lock implies being in a
> :critical section.  I need to think about this more and would like you to wait until
> :John has a chance to look at it as well.
> :
> :Jake
> 
>     Sure thing.

Thanks.

> Ah, critnest... you are right.  I should be checking for
>     critnest > 1.

I think you should just leave it alone, don't check critnest at all.
critnest != 1 is illegal because you can't acquire a sleep lock while
in an enclosing critical section.

Jake

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to