[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH V2 0/2] Fix xen crash when starting HVM guest due to missing io handler
From: Suravee Suthikulpanit <Suravee.Suthikulpanit@xxxxxxx> Hi All, On systems with iommu v2 enabled, the hypervisor crashes when trying to start up an HVM guest. Investigating shows that the guest_iommu_init() is called before the HVM domain is initialized. It then tries to register_mmio_handler() causing the hvm_next_io_handler() to increment the io_handler_count. However, the registration fails silently and left the I/O handler uninitialized. At later time, hvm_find_io_handler() is called and iterate through the registered handlered, but then resulting in referencing NULL pointers. This patch series proposes fix for this issue. NOTE: For patch 2, since guest IOMMU emulation is still incompleted, this change is tentative and will be verified in the future. Alterantively, I can just simply remove the guest_iommu_init()/destroy() for now. I will be also looking at re-enabling this feature in Xen. Changes from V1: * Fix upper bound NR_IO_HANDLERS check for in patch 1. Thanks, Suravee Suravee Suthikulpanit (2): x86/hvm: Add check when register io handler svm: iommu: Only call guest_iommu_init() after initialized HVM domain xen/arch/x86/hvm/intercept.c | 6 +++++- xen/arch/x86/hvm/svm/svm.c | 10 ++++++++++ xen/drivers/passthrough/amd/iommu_guest.c | 6 ++++++ xen/drivers/passthrough/amd/pci_amd_iommu.c | 4 ---- 4 files changed, 21 insertions(+), 5 deletions(-) -- 1.9.1 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |