attach-interface - unexpected action

Bug #1675458 reported by Aaron Doyle
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
QEMU
Expired
Undecided
Unassigned

Bug Description

Hello,

Not sure where to report this, or if it is a bug. However, I feel like the behaviour is not what would/should be expected.

----------------------------------------------------------------------------------------------------------

Environment:
KVM Version: root@hostname:~# virsh version
         Compiled against library: libvirt 1.2.9
   Using library: libvirt 1.2.9
   Using API: QEMU 1.2.9
   Running hypervisor: QEMU 2.1.2
uname -a: Linux hostname 3.16.0-4-amd64 #1 SMP Debian 3.16.39-1+deb8u2 (2017-03-07) x86_64 GNU/Linux
CPU: Intel(R) Xeon(R) CPU E3-1240 V2 @ 3.40GHz
Host Debian Version: 8.7 (Jessie)
Guest Debian Version: 8.7 (Jessie)

----------------------------------------------------------------------------------------------------------

Issue:
When adding an interface to a live VM, the position of interfaces within the VM may change post reboot.
It appears a new interface takes up the first available “pci slot”. If you have removed an interface in the past, this will be the one that is taken up.

----------------------------------------------------------------------------------------------------------

Example:

If the VM Has the following interfaces layout:

eth0 HWaddr 00:00:00:00:00:00
eth1 HWaddr 11:11:11:11:11:11
eth2 HWaddr 22:22:22:22:22:22
eth3 HWaddr 33:33:33:33:33:33

Now I delete the interface with MAC address 11:11:11:11:11:11, you now have this:

eth0 HWaddr 00:00:00:00:00:00
eth1 HWaddr 22:22:22:22:22:22
eth2 HWaddr 33:33:33:33:33:33

And then you add a new interface with MAC address 44:44:44:44:44:44, using virsh:

virsh attach-interface --domain guest --type bridge --source br3 --mac 44:44:44:44:44:44 --model e1000 --target vmeth3 --live --persistent

It will now look like this:

eth0 HWaddr 00:00:00:00:00:00
eth1 HWaddr 22:22:22:22:22:22
eth2 HWaddr 33:33:33:33:33:33
eth3 HWaddr 44:44:44:44:44:44

However, after a reboot, it will look like this:

eth0 HWaddr 00:00:00:00:00:00
eth1 HWaddr 44:44:44:44:44:44
eth2 HWaddr 22:22:22:22:22:22
eth3 HWaddr 33:33:33:33:33:33

This can be a problem, as /etc/network/interfaces file, etc., will be pointing to the wrong interfaces. I.E. originally eth1 was connected to br1 (for example), after reboot eth1 is now connected to br3.

To resolve this issue, I need to edit the .xml file in the KVM machine, and edit the following lines:

      <address type='pci' domain='0x0000' bus='0x00' slot='0x0c' function='0x0'/>

Changing these into the order I want them to be loaded in, i.e. eth0, eth1, eth2…. (I know 4 are taken already and not usable by ethernet interfaces.)

----------------------------------------------------------------------------------------------------------

Thanks in advance.

Kind regards,

Aaron Doyle

Revision history for this message
Thomas Huth (th-huth) wrote :

Looking through old bug tickets ... Have you tried to discuss this issue with the libvirt people? They might need to have a look at your virsh commands first before one could decide whether this is a libvirt or a qemu problem...

Changed in qemu:
status: New → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for QEMU because there has been no activity for 60 days.]

Changed in qemu:
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.