Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 13 May 2004 17:23:45 -0700
From:      Marcel Moolenaar <marcel@xcllnt.net>
To:        Arun Sharma <arun.sharma@intel.com>
Cc:        freebsd-ia64@freebsd.org
Subject:   Re: invala
Message-ID:  <20040514002345.GA50681@ns1.xcllnt.net>
In-Reply-To: <40A3F9DD.8080201@intel.com>
References:  <40A2A0A2.8040004@intel.com> <20040512232827.GB45389@ns1.xcllnt.net> <40A2D3D7.4030804@intel.com> <20040513053053.GA4487@dhcp01.pn.xcllnt.net> <40A3F9DD.8080201@intel.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, May 13, 2004 at 03:42:37PM -0700, Arun Sharma wrote:
> 
> RSE.BOF is just one of the situations when the OS needs to do an invala. 
> But the SDM vol2 section 4.4.5.3.2 lists three other reasons, one of which 
> happens to be:
> 
> - Software changes virtual to physical mapping

Sure, but that needs to be handled in the PMAP layer. You don't really
want to invalidate the ALAT just in case a VM mapping might change.
In practice I don't expect this to happen other than when the process
has been swapped out before and is now being swapped in.

> Obviously, the above has nothing to do with whether the kernel itself has 
> been compiled with data speculation or not. The possibility I'm looking at 
> is:
> 
> ld.a 	r6=[Y]
> ...
> st8 	[Y]=Z	// Clears the ALAT
> >>external interrupt + kernel data speculation leaving stale ALAT entries <<
> chk.a.clr	// Speculation succeeds incorrectly
> 
> To remedy the first example, the OS needs a invala on entry and for the 
> second situation it needs an invala on exit.

I agree that we need to pay attention to it, but I'd like to have a
more detailed analysis before we add invala instructions. I feel that
invalidating the ALAT on entry into the kernel and on exit from the
kernel is too much of a pessimization. I can easily be wrong...

-- 
 Marcel Moolenaar	  USPA: A-39004		 marcel@xcllnt.net


Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040514002345.GA50681>