Subject: Re: 1.6 woes (pmap vs. UBC?)
To: NetBSD/sparc Discussion List <port-sparc@netbsd.org>
From: Manuel Bouyer <bouyer@antioche.eu.org>
List: port-sparc
Date: 08/07/2002 20:49:17
On Mon, Aug 05, 2002 at 06:59:58PM -0400, Greg A. Woods wrote:
> Today I managed to get around to compiling a kernel with Manuel's patch.
>
> My formerly speedy SS-1+ is now crawling like a snail, even just running
> as a diskless workstation! :-)
Yes, these cache flush ops have a high cost.
> [...]
> What's interesting about this change is that if indeed it fixes the
> problem there's some indication that the failure is perhaps not a 100%
> certain condition, but rather still highly timing dependent. I wonder
> how often the offending block of code is encountered vs. how often
> me_alloc() is called. It would seem from the profiling results that
> it's almost 1:1, at least it seems so for each process context switch.
>
> Also interesting is that if there's some critical timing issue with
> cache_flush_segment() then what about the other invocations? Are they
> similarly vulnerable too? What could this problem be?
Well, I tried different things to narrow down the code path which triggers the
problem, and it's really cache_flush_segment() called from me_alloc()
(maybe it's just because it's a code path used very often, though).
>
> Are other sun4c users really avoiding newer NetBSD? Is that why so few
> people have encountered this problem?
It's possible. Remember that this only occurs on older sun4c (the ones
with "sw flush cache"). IPX and SS2 are fine.
--
Manuel Bouyer, LIP6, Universite Paris VI. Manuel.Bouyer@lip6.fr
--