[virt-tools-list] 答复: Re: [virt-manager PATCH] network: add support to create SR-IOV VFs pool

Cole Robinson crobinso at redhat.com
Wed Mar 22 15:47:39 UTC 2017


On 03/21/2017 06:44 AM, Lin Ma wrote:
> 
> 
>>>> Cole Robinson <crobinso at redhat.com> 2017/3/18 星期六 上午 1:10 >>>
>>On 03/17/2017 04:02 AM, Lin Ma wrote:
>>> Create a network with a device pool containing all the VFs of an SR-IOV
>>> device.
>>>
>>> Signed-off-by: Lin Ma <lma at suse.com>
>>> ---
>>>  ui/createnet.ui          |  92 +++++++++++++++++++++++++++++++++-
>>>  virtManager/createnet.py | 127 +++++++++++++++++++++++++++++------------------
>>>  virtinst/network.py      |  12 +++++
>>>  3 files changed, 182 insertions(+), 49 deletions(-)
>>
>>This breaks the test suite, you'll need to extend the network-* test in
>>tests/xmlparse.py
>>
>>"""
>>Second list contains 2 additional elements.
>>First extra element 0:
>><XMLProperty ./@dev 140596782899032>
>>
>>- []
>>+ [<XMLProperty ./@dev 140596782899032>,
>>+  <XMLProperty ./@managed 140596782936352>]
>>
>>
>>This means that there are XML properties that are
>>untested in the test suite. This could be caused
>>by a previous test suite failure, or if you added
>>a new property and didn't extend the test suite.
>>Look into extending clitest.py and/or xmlparse.py.
>>"""
> Thanks for your review, I'll try to learn how to add the tests :-)
>>I don't know much about this feature. Can you provide an example <network>
>>definition that we can add to tests/testdriver.xml?
> Please refer to
> https://wiki.libvirt.org/page/Networking#Assignment_from_a_pool_of_SRIOV_VFs_in_a_libvirt_.3Cnetwork.3E_definition
>  
> The example <network> is:
>  <network>
>    <name>passthrough</name>
>    <forward mode='hostdev' managed='yes'>
>      <pf dev='eth3'/>
>    </forward>
>  </network>
>  
> Should I add it to tests/testdriver.xml?
> (if no VFs on host, the network can't be created successfully)
> 

Yes please add it to the testdriver.xml, since it just uses the libvirt
test:/// hypervisor it won't depend on any host config.

>>Also, is the XML meant to only use an SR-IOV host device? If so, is that
>>something we can detect from nodedev XML? Right now looks like your patch
>>shows all host devices regardless of whether they are SR-IOV enabled
> Yes, It's only use for an SR-IOV host device.
> I knew that showing all host devices regardless of whether they are SR-IOV enabled
> is not a good idea, but as far as I know, SR-IOV status can't be detected from
> nodedev XML so far. How about listing all of host network devices as a workaround,
> then I write a libvirt patch to add the ability about describing the current
> SR-IOV
> status in nodedev XML, once it was accepted in libvirt, I submit a new
> virt-manager
> patch to fix this workaround?

I think I would rather make the field a combobox entry with an editable text
field. When libvirt grows support for reporting SR-IOV devices, we can use
that to populate a list. But until then the user has to manually enter an
interface name. Otherwise we might need to add a libvirt version check to know
whether lack of nodedev XML for sriov means 'not an sriov device' or it means
'libvirt is too old and doesn't show that XML'

Thanks,
Cole




More information about the virt-tools-list mailing list