[libvirt] 答复: Re: [PATCH 1/3] bridge_driver: Return the live state info of a given virtual network
Michal Privoznik
mprivozn at redhat.com
Mon Feb 9 09:39:35 UTC 2015
On 05.02.2015 16:36, Lin Ma wrote:
>
>>>>> "Daniel P. Berrange" <berrange at redhat.com> 2015-2-4 下午 17:17 >>>
>>On Mon, Feb 02, 2015 at 10:08:21PM +0800, Lin Ma wrote:
>>> It constructs a temporary static config of the network, Obtains all of
>>> attached interfaces information through netcf, Then removes the config.
>>>
>>> Signed-off-by: Lin Ma
>>> ---
>>> include/libvirt/libvirt-network.h | 1 +
>>> src/Makefile.am | 3 +
>>> src/network/bridge_driver.c | 141 ++++++++++++++++++++++++++++++++++-
>>> src/network/bridge_driver_platform.h | 7 ++
>>> tests/Makefile.am | 4 +
>>> 5 files changed, 155 insertions(+), 1 deletion(-)
>>
>>So, IIUC, the point of this change is to display a list of all the TAP
>>devices attached to a network. I'm not entirely convinced this is the
>>right approach to take. Also do we want to limit this to reporting of
>>devices inside bridges. It could be equally useful to see a list of
>>macvtap devices associated with a physical NIC.
> Obtaining a list of macvtap devices associated with a physical NIC,
> It's a good idea. I intend to implement this api, also implement a new
> virsh subcommand to show these information to user.
> If you agreed with my thought, Then what are the proper api name and
> virsh subcommand name you suggest? and what about the output format?
Well, let see. We already have a way of expressing node devices (even
virtual net interfaces): virNode* set of API. For instance:
virsh # nodedev-dumpxml net_macvtap0_52_54_00_62_35_0f
<device>
<name>net_macvtap0_52_54_00_62_35_0f</name>
<path>/sys/devices/virtual/net/macvtap0</path>
<parent>computer</parent>
<capability type='net'>
<interface>macvtap0</interface>
<address>52:54:00:62:35:0f</address>
<link state='unknown'/>
<capability type='80203'/>
</capability>
</device>
I think it would be possible to extend macvtap XMLs with <parent/>
element to reflect NIC over which macvtap is created. Although we are
aiming at the opposite mapping. But then again - we don't have any
<child/> element in nodedev XML yet. When trying to build a nodedev
tree, users are required to enumerate nodes and look for <parent/> (or
use virNodeDeviceGetParent()).
Michal
More information about the libvir-list
mailing list