[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Hugepages don't work on the Xen Linux git tree



I hadn't actually tested mainline Linux or the Xen Linux git tree in awhile, 
since we're focusing on RedHat released versions.  When I actually tried to 
use it today it fell over dead as soon as I tried to map a hugepage.

The current method for mapping hugepages does not work at all with Xen.  We 
have set_huge_pte_at() in arch/x86/include/asm/hugetlb.h which does a 
set_pte_at(), but passes it a pmd pointer and a pmd entry.  This will succeed 
on a native Linux kernel, but after passing through the paravirt vector to 
xen_set_pte_at(), it fails miserably.  It expects 
HYPERVISOR_update_va_mapping() to do the right thing and it doesn't.

The fix I have in older kernels is for set_huge_pte_at() to call set_pmd() 
instead.  However, in this brave new world of paravirt vectors, should I 
instead set up a vector for it?  What is the architecturally right thing to 
do?  However we decide to do it, expect a patch for it shortly afterward.

Thanks,
Dave McCracken

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.