On 05/21/2013 10:09 PM, Laine Stump wrote:
On 05/21/2013 09:28 AM, Guannan Ren wrote:
> When using udev backend, virsh iface-list outputs bridge devices
> like:
> Name State MAC Address
> --------------------------------------------
> em1 active e8:39:35:58:d5:94
> lo active 00:00:00:00:00:00
> virbr0 active fe:54:00:a5:f6:42
>
> The patch filters out bridge devices.
>
> ---
> src/interface/interface_backend_udev.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/src/interface/interface_backend_udev.c
b/src/interface/interface_backend_udev.c
> index 1fd7d46..92648e8 100644
> --- a/src/interface/interface_backend_udev.c
> +++ b/src/interface/interface_backend_udev.c
> @@ -78,6 +78,9 @@ udevGetDevices(struct udev *udev, virUdevStatus status)
> /* Ignore devices that are part of a bridge */
> udev_enumerate_add_nomatch_sysattr(enumerate, "brport/state", NULL);
>
> + /* Ignore bridge devices */
> + udev_enumerate_add_nomatch_sysattr(enumerate, "bridge/bridge_id",
NULL);
> +
NACK. It should list bridge devices. What shouldn't be listed is
*transient* interfaces (such as the bridge devices created by libvirt).
This is a problem inherent in the design of the udev driver. It's
examining the current state of the network system, while the original
intent of libvirt's interface driver was really to examine/modify the
persistent system config.
Get it, if so, netcf does a right work.
Thanks for this explanation.
I pointed this out to Doug at the time he
added the udev driver, and he acknowledged the problem but couldn't
think of a simple way to eliminate it, and it didn't seem serious enough
to delay adding in the driver.
--
libvir-list mailing list
libvir-list(a)redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list