[openstack-dev] [Nova][Neutron][NFV][Third-party] CI for NUMA, SR-IOV, and other features that can't be tested on current infra.
sgordon at redhat.com
Tue Nov 25 22:01:06 UTC 2014
----- Original Message -----
> From: "Daniel P. Berrange" <berrange at redhat.com>
> To: "Dan Smith" <dms at danplanet.com>
> On Thu, Nov 13, 2014 at 05:43:14PM +0000, Daniel P. Berrange wrote:
> > On Thu, Nov 13, 2014 at 09:36:18AM -0800, Dan Smith wrote:
> > > > That sounds like something worth exploring at least, I didn't know
> > > > about that kernel build option until now :-) It sounds like it ought
> > > > to be enough to let us test the NUMA topology handling, CPU pinning
> > > > and probably huge pages too.
> > >
> > > Okay. I've been vaguely referring to this as a potential test vector,
> > > but only just now looked up the details. That's my bad :)
> > >
> > > > The main gap I'd see is NUMA aware PCI device assignment since the
> > > > PCI <-> NUMA node mapping data comes from the BIOS and it does not
> > > > look like this is fakeable as is.
> > >
> > > Yeah, although I'd expect that the data is parsed and returned by a
> > > library or utility that may be a hook for fakeification. However, it may
> > > very well be more trouble than it's worth.
> > >
> > > I still feel like we should be able to test generic PCI in a similar way
> > > (passing something like a USB controller through to the guest, etc).
> > > However, I'm willing to believe that the intersection of PCI and NUMA is
> > > a higher order complication :)
> > Oh I forgot to mention with PCI device assignment (as well as having a
> > bunch of PCI devices available), the key requirement is an IOMMU.
> > AFAIK, neither Xen or KVM provide any IOMMU emulation, so I think we're
> > out of luck for even basic PCI assignment testing inside VMs.
> Ok, turns out that wasn't entirely accurate in general.
> KVM *can* emulate an IOMMU, but it requires that the guest be booted
> with the q35 machine type, instead of the ancient PIIX4 machine type,
> and also QEMU must be launched with "-machine iommu=on". We can't do
> this in Nova, so although it is theoretically possible, it is not
> doable for us in reality :-(
Is it worth still pursuing virtual testing of the NUMA awareness work you, nikola, and others have been doing? It seems to me it would still be preferable to do this virtually (and ideally in the gate) wherever possible?
More information about the OpenStack-dev