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, Nov 08, 2010 at 03:22:42PM +0000, Eduardo Horvath wrote:
> 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.
Most of pmaps are already almost unmaintainable IMO. ;)
Home |
Main Index |
Thread Index |
Old Index