tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: pmap_extract(9) (was Re: xmd(4) (Re: XIP))
On Mon, 8 Nov 2010, Masao Uebayashi wrote:
> On Fri, Nov 05, 2010 at 05:36:53PM +0000, Eduardo Horvath wrote:
> > On Fri, 5 Nov 2010, Masao Uebayashi wrote:
> >
> > > On Mon, Nov 01, 2010 at 03:52:11PM -0700, Matt Thomas wrote:
> >
> > > > Indeed. Also consider that pmap's are designed to have to have
> > > > fast V->P translations, using that instead of UVM makes a lot of
> > > > sense.
> > >
> > > How does locking works?
> > >
> > > My understanding is page tables (per-process) are protected by
> > > struct vm_map (per-process). (Or moving toward it.)
> >
> > No, once again this is MD. For instance sparc64 uses compare and swap
> > instructions to manipulate page tables for lockless synchronization.
>
> I don't like "it's MD, period" attitude. That solves nothing.
Yes it does. If you have bleed through between the different abstraction
layers it makes implementing a pmap for a new processor much more
difficult and makes the code inefficient since you end up implementing a
whole bunch of goo just to keep the sideffects compatible. You should not
be making any implicit assumptions beyond what is explicitly documented in
the interface descriptions otherwise the code becomes unmaintainable
across the dozens of different processors and MMU archittures we're trying
to support.
Eduardo
Home |
Main Index |
Thread Index |
Old Index