Source-Changes-D archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: src/sys/uvm



Masao Uebayashi <uebayasi%tombi.co.jp@localhost> responds as;

The entire effect is to eliminate the necessity of VIPT fixup efforts in
port-specific pmap.c and ends up with improving the cache effeciency
in large degree.  This is _the intent_ behind VIPT design.  So far OS
virtual memory strategy paid little attention to make VIPT cache work
correctly.

It'd be nice if we can really eliminate VIPT fixup *code* in pmaps.

And I *think* this is possible if we don't remap pages using
pmap_kenter_pa().

The VIPT rule is simple;  just make sure to match colour between
VPN and PFN.  It's the mandatory programming practice.  This rule
is clearly documented in _many_ CPU architecture documents with
VIPT cache.

- mmap(2) must refuse to map mixed colour VA.
- dynamic linker should pay attention to map share library at
 "colour boundary."  This ensure cache lines shared between
 processes.

Toru Nishimura / ALKYL Technology


Home | Main Index | Thread Index | Old Index