Il 17/09/2014 05:56, Steven ha scritto: > When size = 10MB and 20MB, it looks like that KVM use > kmem_cache_alloc_node and kmalloc_node to allocate physical pages. > However, when size = 40MB, KVM hypervisor uses mm_page_alloc to > allocator physical pages. The former is based on the slab allocator, > while the latter is directly from the buddy allocator. > > So what is the heuristic used by the KVM to determine when to use the > slab allocator or directly from the buddy allocator? Or is there > anything wrong with my trace file? Thanks in advance. I think you're simply tracking different things. You should find the symbols associated to the call sites. KVM doesn't do anything special to allocate physical pages. It simply calls get_user_pages. Paolo -- 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