Bug 966329 - error: udevGetIfaceDefVlan
Summary: error: udevGetIfaceDefVlan
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Virtualization Tools
Classification: Community
Component: libvirt
Version: unspecified
Hardware: Unspecified
OS: Unspecified
unspecified
low
Target Milestone: ---
Assignee: Ján Tomko
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-05-23 05:01 UTC by dualdm
Modified: 2014-05-04 13:14 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-05-04 13:14:32 UTC
Embargoed:


Attachments (Terms of Use)

Description dualdm 2013-05-23 05:01:38 UTC
Description of problem: libvirtd.log filling with messages like

2013-05-22 17:22:46.967+0000: 30647: error : udevGetIfaceDefVlan:951 : internal error failed to find the VID for the VLAN device 'vlan0027'                                                                    
2013-05-22 17:22:46.971+0000: 30648: error : udevGetIfaceDefVlan:951 : internal error failed to find the VID for the VLAN device 'vlan0037'                                                                    
2013-05-22 17:22:46.975+0000: 30651: error : udevGetIfaceDefVlan:951 : internal error failed to find the VID for the VLAN device 'vlan0043'                                                                    
2013-05-22 17:22:46.978+0000: 30650: error : udevGetIfaceDefVlan:951 : internal error failed to find the VID for the VLAN device 'vlan0411'                                                                    
2013-05-22 17:22:46.984+0000: 30649: error : udevGetIfaceDefVlan:951 : internal error failed to find the VID for the VLAN device 'vlan0471'                                                                    
2013-05-22 17:22:46.988+0000: 30647: error : udevGetIfaceDefVlan:951 : internal error failed to find the VID for the VLAN device 'vlan0044'                                                                    
2013-05-22 17:22:46.988+0000: 30647: error : udevGetIfaceDefBridge:910 : internal error Could not get interface information for 'vlan0044', which is a member of bridge 'vmbr44'                               

Version-Release number of selected component (if applicable): libvirt-1.0.5


How reproducible: 

create vlans 
Name-Type: VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD

start libvirtd

Steps to Reproduce:
1.
2.
3.

Actual results: errors log file filled in 1 seconds freq.

Expected results:


Additional info:

Comment 1 dualdm 2013-05-23 05:08:14 UTC
It seems that

udevGetIfaceDefVlan
udevGetIfaceDefBridge

need to modify.

Comment 2 Thomas 2014-04-04 18:32:40 UTC
I am having the same problem. It's filling up the logs and trying to connect to a server via virt-manager doesn't work anymore since virt-manager-1.0.0 because of this.

It's a standard vlan

Here is the network setup, it's a standard vlan interface bound to a bonded interface:

7: vlan12@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP 
    link/ether 00:25:90:c9:a1:68 brd ff:ff:ff:ff:ff:ff
12: macvtap0@vlan12: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 500
    link/ether 52:54:00:9d:d0:54 brd ff:ff:ff:ff:ff:ff

@dualdm: Did you find a workaround for the problem?

Comment 3 dualdm 2014-04-13 14:55:37 UTC
Change your vlan name-type to 

DEV_PLUS_VID (eth0.0005) or 
DEV_PLUS_VID_NO_PAD (eth0.5)

and this message disappears.

It's cause of devicename parsing in src/interface/interface_backend_udev.c

...
    /* Find the DEVICE.VID again */
    vid = strrchr(name, '.');
    if (!vid) {
        virReportError(VIR_ERR_INTERNAL_ERROR,
                       _("failed to find the VID for the VLAN device '%s'"),
                       name);
        return -1;
    }

Comment 4 Ján Tomko 2014-04-24 15:56:28 UTC
I have proposed a patch upstream:
https://www.redhat.com/archives/libvir-list/2014-April/msg00922.html

Comment 5 dualdm 2014-04-29 05:50:40 UTC
(In reply to Jan Tomko from comment #4)
> I have proposed a patch upstream:
> https://www.redhat.com/archives/libvir-list/2014-April/msg00922.html

It's fixed the issue. 

Thanks.

Comment 6 Ján Tomko 2014-05-04 13:14:32 UTC
Now pushed upstream:
commit a65871aaae5f36618802e3f3a5982b8d82280e13
Author:     Ján Tomko <jtomko>
CommitDate: 2014-05-04 15:08:14 +0200

    Fix vlan ID detection in udev interface driver
    
    Instead of guessing it from the interface name, look into
    /proc/net/vlan/<interface>.
    
    This works for devices not named <real_device>.<vlan ID>,
    avoiding an error flood when virt-manager keeps asking about
    them every second:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=966329

git describe: v1.2.4-2-ga65871a


Note You need to log in before you can comment on or make changes to this bug.