[parisc-linux-cvs] linux jsm

John Marvin jsm@puffin.external.hp.com
Thu, 8 Feb 2001 05:34:31 -0700


CVSROOT:	/home/cvs/parisc
Module name:	linux
Changes by:	jsm	01/02/08 05:34:31

Modified files:
	arch/parisc/kernel: pacache.S 

Log message:
The fdce instruction is called multiple times for each line of a cache when
the cache is set associate (2-way on PCXL2, 4-way on PCXW). The hardware
maintains "state" regarding which "way" to flush, therefore can't allow
interrupts during the loop in flush_data_cache(). So, we disable interrupts.
Not sure I like this fix, but the alternatives aren't great either.

Note that this problem does NOT exist for the instruction cache using
fice (fice invalidates all "ways" simultaneously, since it doesn't have
to worry about pushing cache lines out).