[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 0/2] x86/mm: remove arch-specific PTE/PMD get-and-clear functions
This series removes the x86-specific implementation of ptep_get_and_clear() and pmdp_get_and_clear(). The principal reason for this is it allows Xen paravitualized guests to batch the PTE clears which is a significant performance optimization of munmap() and mremap() -- the number of entries into the hypervisor is reduced by about a factor of about 30 (60 in 32-bit guests) for munmap(). There may be minimal gains on native and KVM guests due to the removal of the locked xchg. Removal of arch-specific functions where generic ones are suitable seems to be a generally useful thing to me. The full reasoning for why this is safe is included in the commit message of patch 1 but to summarize. The atomic get-and-clear does not guarantee that the latest dirty/accessed bits are returned as TLB as there is a still a window after the get-and-clear and before the TLB flush that the bits may be updated on other processors. So, user space applications accessing pages that are being unmapped or remapped already have unpredictable behaviour. David _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |