Subject: Re: 1.5S vs sparc/MP
To: Simon J. Gerraty <sjg@quick.com.au>
From: Paul Kranenburg <pk@cs.few.eur.nl>
List: tech-smp
Date: 03/15/2001 12:44:44
> panic: lockmgr: no context
> 
> Unfortunately, the machine locks solid at this point so I can't gather
> any more info.

Most likely, you've got a deadlock on a spinlock. panic() should probably
get involved in some amount of magic to release (some) locks and/or
enable to by-pass them until an actual reboot happens.

> BTW the reduced noise from the cache semaphore is due to only enabling
> debug for the first use of it in each smp_*flush*() routine.
> If I turn them on all the time, things look better, but I suspect that
> has too much to do with the printfs...  maybe the cache semaphore is
> not helping at all.  I'll take it out again...

I think the best way to go about cache/TLB flushing is to simply make
the initiating CPU busy-wait within the cross-call function until
all CPUs are done. This will require a rewrite of all the cross-call
stuff we have now (but that does not amount to much anyway).

-pk