Source-Changes-D archive

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

Re: CVS commit: src/sys/uvm



On Mon, Feb 20, 2012 at 07:49:16PM +0000, Mindaugas Rasiukevicius wrote:
> "Manuel Bouyer" <bouyer%netbsd.org@localhost> wrote:
> > Module Name:        src
> > Committed By:       bouyer
> > Date:               Mon Feb 20 19:14:24 UTC 2012
> > 
> > Modified Files:
> >     src/sys/uvm: uvm_km.c uvm_kmguard.c uvm_map.c
> > 
> > Log Message:
> > When using uvm_km_pgremove_intrsafe() make sure mappings are removed
> > before returning the pages to the free pool. Otherwise, under Xen,
> > a page which still has a writable mapping could be allocated for
> > a PDP by another CPU and the hypervisor would refuse it (this is
> > PR port-xen/45975).
> > For this, move the pmap_kremove() calls inside uvm_km_pgremove_intrsafe(),
> > and do pmap_kremove()/uvm_pagefree() in batch of (at most) 16 entries
> > (as suggested by Chuck Silvers on tech-kern@, see also
> > http://mail-index.netbsd.org/tech-kern/2012/02/17/msg012727.html and
> > followups).
> 
> Why did you ignore my comment on tech-kern@ about batching?  I still think
> it is unnecessary.  Such optimisations should be done in MD side, instead
> of adding complexity to MI.

Well, you didn't reply to my comments about the complexity of doing it
in MD code, when the expensive operation has to be done before zaping the
PTEs, or is zaping the PTEs themselves.


-- 
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
     NetBSD: 26 ans d'experience feront toujours la difference
--


Home | Main Index | Thread Index | Old Index