Hi Mel, Thank you for this series. I have applied on clean 3.6-rc5 and tested, and it works well for me - the lock contention is (still) gone and isolate_freepages_block is much reduced. Here is a typical test with these patches: # grep -F '[k]' report | head -8 65.20% qemu-kvm [kernel.kallsyms] [k] clear_page_c 2.18% qemu-kvm [kernel.kallsyms] [k] isolate_freepages_block 1.56% qemu-kvm [kernel.kallsyms] [k] _raw_spin_lock 1.40% qemu-kvm [kernel.kallsyms] [k] svm_vcpu_run 1.38% swapper [kernel.kallsyms] [k] default_idle 1.35% qemu-kvm [kernel.kallsyms] [k] get_page_from_freelist 0.74% ksmd [kernel.kallsyms] [k] memcmp 0.72% qemu-kvm [kernel.kallsyms] [k] free_pages_prepare I did manage to get a couple which were slightly worse, but nothing like as bad as before. Here are the results: # grep -F '[k]' report | head -8 45.60% qemu-kvm [kernel.kallsyms] [k] clear_page_c 11.26% qemu-kvm [kernel.kallsyms] [k] isolate_freepages_block 3.21% qemu-kvm [kernel.kallsyms] [k] _raw_spin_lock 2.27% ksmd [kernel.kallsyms] [k] memcmp 2.02% swapper [kernel.kallsyms] [k] default_idle 1.58% qemu-kvm [kernel.kallsyms] [k] svm_vcpu_run 1.30% qemu-kvm [kernel.kallsyms] [k] _raw_spin_lock_irqsave 1.09% qemu-kvm [kernel.kallsyms] [k] get_page_from_freelist # grep -F '[k]' report | head -8 61.29% qemu-kvm [kernel.kallsyms] [k] clear_page_c 4.52% qemu-kvm [kernel.kallsyms] [k] _raw_spin_lock_irqsave 2.64% qemu-kvm [kernel.kallsyms] [k] copy_page_c 1.61% swapper [kernel.kallsyms] [k] default_idle 1.57% qemu-kvm [kernel.kallsyms] [k] _raw_spin_lock 1.18% qemu-kvm [kernel.kallsyms] [k] get_page_from_freelist 1.18% qemu-kvm [kernel.kallsyms] [k] isolate_freepages_block 1.11% qemu-kvm [kernel.kallsyms] [k] svm_vcpu_run I will follow up with the detailed traces for these three tests. Thank you! Richard. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html