help, trying to invalidate entire icache on 970

Jake Moilanen moilanen at austin.ibm.com
Wed Apr 6 05:33:34 EST 2005


On Tue, 05 Apr 2005 11:33:23 -0600
Chris Friesen <cfriesen at nortel.com> wrote:

> I'm having issues with some code that is supposed to invalidate the 
> entire icache on a 970.
> 
> I have a little test app in userspace that overwrites an instruction and 
> calls some kernel code to invalidate the whole cache.  Unfortunately, 
> sometimes the new instruction doesn't get run, and if I start a kernel 
> build in the background, it occurs quite frequently.

IIRC to modify an instruction you need the following sequence to do
flush the icache correctly:

	dcbst  
	sync
	icbi 
	isync

I can't remember if the 970 actually requires this sequence or not.

Jake



More information about the Linuxppc64-dev mailing list