KVM: 0.130 other: 0.090 network: 0.085 device: 0.084 semantic: 0.076 boot: 0.073 PID: 0.067 socket: 0.064 permissions: 0.062 files: 0.057 graphic: 0.056 vnc: 0.055 debug: 0.054 performance: 0.049 KVM: 0.827 debug: 0.044 other: 0.031 PID: 0.016 semantic: 0.012 device: 0.012 network: 0.011 files: 0.011 socket: 0.009 vnc: 0.008 performance: 0.005 boot: 0.005 permissions: 0.005 graphic: 0.004 attach-interface - unexpected action 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:
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 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... [Expired for QEMU because there has been no activity for 60 days.]