Messages in this thread | | | Date | Wed, 02 May 2007 11:52:57 +0100 | From | "Jan Beulich" <> | Subject | Re: [patches] [PATCH] [28/34] i386: pte xchg optimization |
| |
>>> Andi Kleen <ak@suse.de> 30.04.07 17:50 >>> > >From: Zachary Amsden <zach@vmware.com> > >In situations where page table updates need only be made locally, and there is >no cross-processor A/D bit races involved, we need not use the heavyweight >xchg instruction to atomically fetch and clear page table entries. Instead, >we can just read and clear them directly.
I always wondered why the xchg is necessary here at all. If the process of tearing down a page table entry has started, other users of the mapped linear address are broken anyway - why is it necessary to still monitor the effect they may have on the A/D bits, unless this is a transient tear down?
Checking for the uses of ptep_get_and_clear, I would judge that the use in change_pte_range() may in fact need the xchg, but the uses in vunmap_pte_range() and zap_pte_range() shouldn't.
Jan
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |