This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] [PATCH] turn off writable page tables

Keir Fraser wrote:
It would allow set_pte() to switch between explicit queuing and 'direct' writing. We moved away from the former a few years back as doing it everywhere made a mess of the generic Linux mm code and it was hard to reason whether our patches were correct. I guess doing it for the most important subset of mm routines is not so bad. It's a shame that, although many set_pte() call sites could determine statically whether or not they will batch, we'd end up with a dynamic run-time test everywhere (unless I'm mistaken) -- I wonder if that has a measurable cost?

We've actually seen a benefit for this, despite the cost of the non-static parameters, for both VMI Linux with shadow pagetables on ESX and VMI Linux with direct pagetables on Xen. Turns out that as long as the call EIP is predictable, the parameters do not necessarily need to be so, and modern processors are getting much better at branch prediction.

Doing explicit batching exactly where it counts, under protection of locks, so that SMP safety is guaranteed turns out to be really easy, as well as a nice win.


Xen-devel mailing list