[Bug 829033] New: veth devices must not handled by udevd
https://bugzilla.novell.com/show_bug.cgi?id=829033 https://bugzilla.novell.com/show_bug.cgi?id=829033#c0 Summary: veth devices must not handled by udevd Classification: openSUSE Product: openSUSE 12.3 Version: Final Platform: Other OS/Version: Other Status: NEW Severity: Normal Priority: P5 - None Component: Basesystem AssignedTo: bnc-team-screening@forge.provo.novell.com ReportedBy: richard@nod.at QAContact: qa-bugs@suse.de Found By: --- Blocker: --- User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:22.0) Gecko/20100101 Firefox/22.0 /usr/lib/udev/rules.d/77-network.rules does not white list veth devices, if tools like libvirt create veth devices udevd runs ifup/down/hotplug on them and confuses libvirt. Reproducible: Always Steps to Reproduce: 1. 2. 3. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=829033 https://bugzilla.novell.com/show_bug.cgi?id=829033#c FeiXiang Zhang <fxzhang@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|bnc-team-screening@forge.pr |rmilasan@suse.com |ovo.novell.com | -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=829033 https://bugzilla.novell.com/show_bug.cgi?id=829033#c1 Robert Milasan <rmilasan@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P5 - None |P4 - Low Status|NEW |ASSIGNED CC| |rmilasan@suse.com AssignedTo|rmilasan@suse.com |mt@suse.com --- Comment #1 from Robert Milasan <rmilasan@suse.com> 2013-07-17 08:55:30 UTC --- The rule is part of sysconfig and it's maintained by Marius Tomaschewski, but I will stay in the CC. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=829033 https://bugzilla.novell.com/show_bug.cgi?id=829033#c2 Marius Tomaschewski <mt@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |NEEDINFO InfoProvider| |richard@nod.at --- Comment #2 from Marius Tomaschewski <mt@suse.com> 2013-07-17 14:05:10 UTC --- (In reply to comment #0)
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:22.0) Gecko/20100101 Firefox/22.0
/usr/lib/udev/rules.d/77-network.rules does not white list veth devices, if tools like libvirt create veth devices udevd runs ifup/down/hotplug on them and confuses libvirt. ^^^^^^^^^^^^^^^^
How does it confuse libvirt / what are the problem you've observed? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=829033 https://bugzilla.novell.com/show_bug.cgi?id=829033#c3 --- Comment #3 from Richard Weinberger <richard@nod.at> 2013-07-17 14:11:11 UTC --- libvirt creates veth devies and sets them up/down. If udevd also starts configuring them we end up in a situation where libvirt thinks that an interface is up, but is in reality down and vice versa. Fell free to read that thread: http://www.redhat.com/archives/libvir-list/2013-July/msg00008.html Gao feng and myself wasted a lot of time with hunting such an issue down. Thanks, //richard -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=829033 https://bugzilla.novell.com/show_bug.cgi?id=829033#c4 --- Comment #4 from Richard Weinberger <richard@nod.at> 2013-07-17 14:12:14 UTC --- BTW: There is *zero* reason why udevd should handle virtual network devices... -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=829033 https://bugzilla.novell.com/show_bug.cgi?id=829033#c5 Marius Tomaschewski <mt@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEEDINFO |RESOLVED InfoProvider|richard@nod.at | Resolution| |INVALID --- Comment #5 from Marius Tomaschewski <mt@suse.com> 2013-07-17 21:24:11 UTC --- (In reply to comment #3)
libvirt creates veth devies and sets them up/down.
Right.
If udevd also starts configuring them we end up in a situation where libvirt thinks that an interface is up, but is in reality down and vice versa.
No, udev does not create them -- it just handles the event when interface appears in the system (created by libvirt in this case) or is removed from the system/kernel (triggered by libvirt, cleanup call on sysconfig side). There is no ifcfg-file for the veth interfaces, so nothing is done and nothing happens. When there is one, it is there a) by intention or b) libvirt is trying to use a system configured/reserved interface name, that is a misconfiguration. (In reply to comment #4)
BTW: There is *zero* reason why udevd should handle virtual network devices...
e.g. routed vm configuration on the host side, we've used with xen. The user may want to create a ifcfg-file with STARTMODE=hotplug and ifroute-file to apply routes. As there is no issue, resolving as INVALID. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=829033 https://bugzilla.novell.com/show_bug.cgi?id=829033#c6 --- Comment #6 from Richard Weinberger <richard@nod.at> 2013-07-17 21:30:49 UTC --- So, can you please explain me why udevd is calling "/sbin/ifdown veth5 -o hotplug"? On my system is no ifcfg file for veth5. Thanks, //richard -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=829033 https://bugzilla.novell.com/show_bug.cgi?id=829033#c7 --- Comment #7 from Marius Tomaschewski <mt@suse.com> 2013-07-18 09:08:11 UTC --- (In reply to comment #6)
So, can you please explain me why udevd is calling "/sbin/ifdown veth5 -o hotplug"? On my system is no ifcfg file for veth5.
To mark it "rename done" (by udev; or rule 77 reached), track the state and _if_ there is ifcfg config, to start the interface. That there is no ifcfg-veth5 file, does not mean there is really no ifcfg config for the interface: it could be an iBFT interface and ifup reads the iBFT NICs as ifcfg config - it even ignores an existing ifcfg file - then. Further, when there is no iBFT but a ifcfg-file, it may have STARTMODE=off, disabling it even ifcfg file exists. A test -f file is not sufficient. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=829033 https://bugzilla.novell.com/show_bug.cgi?id=829033#c8 --- Comment #8 from Marius Tomaschewski <mt@suse.com> 2013-07-18 19:45:25 UTC --- http://www.redhat.com/archives/libvir-list/2013-July/msg01234.html -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=829033 https://bugzilla.novell.com/show_bug.cgi?id=829033#c9 Marius Tomaschewski <mt@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|INVALID | AssignedTo|mt@suse.com |jfehlig@suse.com --- Comment #9 from Marius Tomaschewski <mt@suse.com> 2013-07-18 19:47:06 UTC --- IMO libvirt is missing an "udevadm settle" call between "remove foo; add foo" -- the "add" and "link up" calls in libvirt are done before udev finished the "remove" event processing. See also link in comment 8. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=829033 https://bugzilla.novell.com/show_bug.cgi?id=829033#c10 Marius Tomaschewski <mt@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |mt@suse.com --- Comment #10 from Marius Tomaschewski <mt@suse.com> 2013-07-18 19:50:52 UTC --- Jim, we can add veth and vnet to the skip_ifup blacklist as well, but the settle calls are IMO required too. The "ip link set down" is called because ifdown checks it and notices that the interface is still up. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@novell.com