If enabling virtual Q35 solves the problem, it has the advantage: When more and more virtual IOMMU feature comes (likely), we can reuse the KVM code for Xen. How big is the effort for virtual Q35?
Thx Eddie > -----Original Message----- > From: Lan, Tianyu > Sent: Thursday, May 26, 2016 4:30 PM > To: jbeul...@suse.com; sstabell...@kernel.org; ian.jack...@eu.citrix.com; > xen-de...@lists.xensource.com; Tian, Kevin <kevin.t...@intel.com>; Dong, > Eddie <eddie.d...@intel.com>; Nakajima, Jun <jun.nakaj...@intel.com>; > yang.zhang...@gmail.com; anthony.per...@citrix.com > Subject: Discussion about virtual iommu support for Xen guest > > Hi All: > We try pushing virtual iommu support for Xen guest and there are some > features blocked by it. > > Motivation: > ----------------------- > 1) Add SVM(Shared Virtual Memory) support for Xen guest To support iGFX > pass-through for SVM enabled devices, it requires virtual iommu support to > emulate related registers and intercept/handle guest SVM configure in the > VMM. > > 2) Increase max vcpu support for one VM. > > So far, max vcpu for Xen hvm guest is 128. For HPC(High Performance > Computing) cloud computing, it requires more vcpus support in a single VM. > The usage model is to create just one VM on a machine with the same number > vcpus as logical cpus on the host and pin vcpu on each logical cpu in order > to get > good compute performance. > > Intel Xeon phi KNL(Knights Landing) is dedicated to HPC market and supports > 288 logical cpus. So we hope VM can support 288 vcpu to meet HPC > requirement. > > Current Linux kernel requires IR(interrupt remapping) when MAX APIC ID is > > 255 because interrupt only can be delivered among 0~255 cpus without IR. IR in > VM relies on the virtual iommu support. > > KVM Virtual iommu support status > ------------------------ > Current, Qemu has a basic virtual iommu to do address translation for virtual > device and it only works for the Q35 machine type. KVM reuses it and Redhat is > adding IR to support more than 255 vcpus. > > How to add virtual iommu for Xen? > ------------------------- > First idea came to my mind is to reuse Qemu virtual iommu but Xen didn't > support Q35 so far. Enabling Q35 for Xen seems not a short term task. > Anthony did some related jobs before. > > I'd like to see your comments about how to implement virtual iommu for Xen. > > 1) Reuse Qemu virtual iommu or write a separate one for Xen? > 2) Enable Q35 for Xen to reuse Qemu virtual iommu? > > Your comments are very appreciated. Thanks a lot. > -- > Best regards > Tianyu Lan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel