On 22.10.2014 14:02, Chapman, James P wrote:
Currently libvirt provides lots of useful information on the HW
capabilities of the host and its attached devices. I’m interested in
extending the HW capability discovery of libvirt, to a point where it is
capable of discovering the HW offload capabilities of host PCI devices.
Take a NIC for example, this feature would enable libvirt discover the
supported NIC offload features, csum, tso, etc.
So where might a feature like this be used. Consider an Openstack
deployment, a VM may have a workload that depends on specific NIC HW
offload capabilities in order to stay within certain throughput, CPU
utilisation or latency thresholds. For this scenario, it’s important
that the VM is placed on a host with PCI devices that provide the
required NIC HW offload capabilities. If libvirt could provide this
functionality, this information could be used during the VM scheduling
phase when all nodes are evaluated for their suitability.
From what I understand, libvirt currently uses ioctl’s to get the NIC
state, MTU, etc. Could the ethtool ioctl framework be used to discover
the HW offload features provided by the hosts network controllers.
Right. While libvirt already allows setting these knobs on a NIC (thanks
to Jan and his commit 5b3536ae) it is not exposing this info. I'd say
open a bug or propose the patches. I think it's worth-having functionality.
Michal