2017-07-06 21:36 GMT-03:00 W. Michael Petullo <m...@flyn.org>: > I have been using OpenWrt to build HVM DomU guests under Xen for some > time. From what I can tell, Xen's PVHVM drivers (namely, netfront and > blkfront) are not available on my OpenWrt DomU guests, and thus the > guests rely on the slower QEMU-based drivers. As a result, the network > and disk performance of these DomU guests is not optimal. > > I did notice that Felix removed the Xen DomU subtarget in January. > Would it be possible to return support for Xen's front-end virtual device > drivers for use with HVM guests? > > -- > Mike
Mike, I'm also a user of OpenWRT as Xen DomU. However, I didn't try it with LEDE (yet). AFAIK, there is no need for a kernel-xen variation. So, no need for a special target (that got removed). Xen only needs a kernel with pv-ops (generically support for different hypervisors) and xen drivers in order to run it as DomU or HVM. I just checked the last kernel I built for x86/generic (not x86/64) and looking at kernel config (inside builddir), I have, by default: CONFIG_PARAVIRT=y CONFIG_XEN=y CONFIG_XEN_DOM0=y CONFIG_XEN_PVHVM=y CONFIG_XEN_SAVE_RESTORE=y CONFIG_XEN_DEBUG_FS=y CONFIG_PCI_XEN=y CONFIG_XEN_PCIDEV_FRONTEND=y CONFIG_XEN_BLKDEV_FRONTEND=y CONFIG_XEN_SCSI_FRONTEND=y CONFIG_XEN_NETDEV_FRONTEND=y CONFIG_INPUT_XEN_KBDDEV_FRONTEND=y CONFIG_HVC_XEN=y CONFIG_HVC_XEN_FRONTEND=y CONFIG_XEN_WDT=y CONFIG_XEN_FBDEV_FRONTEND=y CONFIG_XEN_BALLOON=y CONFIG_XEN_SCRUB_PAGES=y CONFIG_XEN_DEV_EVTCHN=y CONFIG_XENFS=y CONFIG_XEN_COMPAT_XENFS=y CONFIG_XEN_SYS_HYPERVISOR=y CONFIG_XEN_XENBUS_FRONTEND=y CONFIG_XEN_GNTDEV=y CONFIG_XEN_GRANT_DEV_ALLOC=y CONFIG_SWIOTLB_XEN=y CONFIG_XEN_PRIVCMD=y CONFIG_XEN_ACPI_PROCESSOR=y CONFIG_XEN_HAVE_PVMMU=y CONFIG_XEN_AUTO_XLATE=y CONFIG_XEN_ACPI=y CONFIG_XEN_SYMS=y CONFIG_XEN_HAVE_VPMU=y I also checked modules.builtin: kernel/drivers/block/xen-blkfront.ko kernel/drivers/input/misc/xen-kbdfront.ko kernel/drivers/net/xen-netfront.ko kernel/drivers/pci/xen-pcifront.ko kernel/drivers/scsi/xen-scsifront.ko kernel/drivers/video/fbdev/xen-fbfront.ko kernel/drivers/watchdog/xen_wdt.ko kernel/drivers/xen/xen-evtchn.ko kernel/drivers/xen/xen-gntdev.ko kernel/drivers/xen/xen-gntalloc.ko kernel/drivers/xen/xen-privcmd.ko kernel/drivers/xen/xen-acpi-processor.ko kernel/drivers/xen/xenbus/xenbus_probe_frontend.ko kernel/drivers/xen/xenfs/xenfs.ko So, it seems that all needed xen drivers are, not only compiled, but built into the kernel. So, no module (or package) is needed. As LEDE does not use initrd, at least blkdev frontend must be builtin. Other drivers like net might also work as modules. LEDE even selects CONFIG_XEN_DOM0, which would allow it to host other domU. It would be an interesting use for LEDE though. However, LEDE does not compile the net/blk backend drivers nor xen-tools that are normally needed for domUs. As I said, I did not tested current LEDE kernel with Xen. Please, check your dmesg. It normally shows xen drivers getting loaded and activating (or deactivating when not running under xen). x86/64 target might be better for a xen domU. Since xen 4.3, the hypervisor requires x86_64. So, you are probably running on a x86_64 machine. However, I only saw xen config here: https://github.com/lede-project/source/blob/master/target/linux/x86/generic/config-default not here: https://github.com/lede-project/source/blob/master/target/linux/x86/64/config-default x86/generic might work out of box. x86/64 lacks drivers, that might be your problem right now. Regads, --- Luiz Angelo Daros de Luca, Me. luizl...@gmail.com _______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev