Subject: Re: more on cache ops... What are they actually supposed to do?
To: None <jeffs@geocast.com>
From: Chris G. Demetriou <cgd@sibyte.com>
List: port-mips
Date: 06/20/2000 13:39:23
Jeff Smith <jeffs@geocast.com> writes:
> > (1) the point above is about doing the kseg conversion in C there for
> > FlushICache, but in assembly for FlushDCache. Of the mips3
> > FlushICache calls i could find in the MI pmap, 2 were done with a
> > kseg0 address, but one was done with a potentially-user va, AFAIK.
> > (again the requirement of virtual indexing, correct?) In the one
> > done with a 'random' va (pmap.c:1340), the pa is at hand, why not
> > use it, and then you could make the calling interface consistent?
>
> The physical address may have a different virtual index, so if you
> know the mapping, you need to use it.
OK. (So, this is one of the cases where you might get a TLB miss,
when flushing... 8-)
Based on other mail, really, all you need are the virtual indices to
flush. So, at least in this code, there's nothing from preventing the
mask-and-or trick to make a kseg address here, correct? (i.e. it
would be possible to make the code consistent.)
chris