Subject: Re: Panic: pv_unlink0
To: Harald Barth <haba@pdc.kth.se>
From: Erik Fair <fair@clock.org>
List: port-sparc
Date: 02/02/1998 09:25:00
I made a slight mistake with that patch - do not zero out the flags field.
That will cause some bad caching decisions to be made. The real "fix" was
just to zero out the pv_va field, because it was getting used after it was
made invalid.

Paul Kranenburg did not commit this patch, because he found the place where
the race condition was taking place and fixed that instead. When I asked
about zeroing pv_va anyway, he wanted to keep the old state around for
debug purposes, which seemed reasonable to me.

I have not had the problem since his fix. I also ran for 30 days on my own
patch with no problems. I don't claim to understand the Sun MMUs - I was
going at the problem from a "code inspection and cleanliness" point of view
(when you use a variable, or some memory, be sure to clean up after
yourself), and I got lucky. Paul does understand what is going on in pmap.c
and I'll happily defer to him on what should or should not be in there.

	Erik <fair@clock.org>