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

Re: [Xen-devel] 32bit PAE PV guest on 64bit hypervisor





Keir Fraser wrote:
On 14/04/2009 04:39, "Mukesh Rathor" <mukesh.rathor@xxxxxxxxxx> wrote:

..
Implementing clear_fixmap() with set_pte() is not correct, even on native.
Since it clears high then low, it temporarily leaves you with a possibly
invalid present PTE -- even on native this can cause problems if e.g., the
invalid PTE maps uncacheable I/O memory.

In our kernel we simply solved this by implementing __set_fixmap() with a
hypercall that could update all 64 bits at once. An alternative is indeed to
clear low then high. Basically, clearing a pte has to be done the opposite
way round to setting a pte.

 -- Keir

Just a quick update, I changed to hypercall and it worked. BTW, I also had to increase the __PHYSICAL_MASK_SHIFT in guest (to 40) as I'm on system with 128GB. With both changes in the 32bit PAE guest, it's doing OK now.

Thanks for the help.
Mukesh


_______________________________________________
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®.