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

Re: [Xen-users] Xen as Guest L1 - VirtIO front-end

On Thu, 2015-05-28 at 11:45 +0100, George Dunlap wrote:
> On Wed, May 27, 2015 at 9:47 PM, Alex Palesandro <palexster@xxxxxxxxx> wrote:
> > Hi,
> >
> > I'm trying to virtualize Xen as L1 nested hypervisor. However, when I try to
> > boot Dom0 linux kernel, the boot process hangs  (relevant output should be
> > attached).
> >
> > I'm using KVM on ArchLinux with Linux 4.0.3 with qemu 2.3.0. The guest
> > hypervisor is Xen 4.5 with Ubuntu 14.10 (Linux 3.16) as Dom0.
> > Looking at the log, I'm guessing that the problem concerns VirtIO. Any Idea
> > for a possible workaround? Is it possible to use the VirtIO front-end in
> > Dom0?
> Have you tried disabling virtio (i.e., using only emulated devices)
> and seeing if that works?  That would give you a pretty clear "smoking
> gun" as it were.
> I don't know much about virtio.  But I wouldn't be surprised if the
> virtio code assumes that it knows how to make hypercalls and talk to
> the hypervisor.  But in this case, dom0 is technically an L2 guest (a
> VM running on L1 Xen running on L0 KVM); in which case some
> "hypervisor interactions" will end up in Xen (e.g., pvcpuid, int 0x81
> hypercalls), and other "hypervisor interactions" will end up in
> KVM/qemu (at very least, MMIO accesses from the virtio PCI bus
> devices).
> Not that it might not be able to be made to work, but I'm not at all
> surprised to found out that it doesn't. :-)

IIRC virtio does not use the kernel's DMA API, since in general it
doesn't need to. But under Xen the DMA API is the thing which arranges
inside a PV domain (which includes dom0) to translate guest physical
addresses to machine physical ones.

So virtio in L1 dom0 ends up using guest physical addresses, whereas the
backend (in L0 KVM) is seeing what would be machine addresses to the L1


Xen-users mailing list



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