[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-ia64-devel] [Patch] Fix for re-enabling PV-on-HVM on IPF
Hi Yamahata-san, Thank you for your comment. You (yamahata) said: > On Tue, Mar 06, 2007 at 09:56:14PM +0900, DOI Tsunehisa wrote: >> - we have to modify guest_physmap_add_page() to support it. >> (this is straight reason of hypervisor crash) > > The patch breaks the the p2m/m2p table convension. > get_page() shouldn't fail because xen heap page must be owned > by the domain when guest_physmap_add_page() is called. > share_xen_page_with_guest() does it. I've thought that this patch is tricky, but I didn't find the correct way to modify to avoid hypervisor crash issue. > What kind of page was passed when you observed the panic? > Who allocated and passed it? Currently, without this patch, hypervisor crashes in PV-on-HVM initialization phase.. * at share_info page remapping: success - called from HYPERVISOR_memory_op in init_xen_info().. (unmodified_drivers/linux-2.6/platform-pci/platform-pci.c) * at grant table page remapping: crash - called from gnttab_init() in init_xen_info() - call tree in driver code is gnttab_init() -> gnttab_resume() -> gnttab_map() -> HYPERVISOR_memory_op (linux-2.6-xen-sparse/drivers/xen/core/gnttab.c) - at guest_physmap_add_page() in hypervisor code, 1706 void 1707 guest_physmap_add_page(struct domain *d, unsigned long gpfn, 1708 unsigned long mfn) 1709 { 1710 int ret; 1711 1712 BUG_ON(!mfn_valid(mfn)); 1713 ret = get_page(mfn_to_page(mfn), d); 1714 BUG_ON(ret == 0); <<==== it crashes at this point. 1715 set_gpfn_from_mfn(mfn, gpfn); 1716 smp_mb(); So, at grant table page remapping, the hypervisor crashes, I think. Thanks, - Tsunehisa Doi _______________________________________________ Xen-ia64-devel mailing list Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ia64-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |