+++ This bug is a downstream clone. The original bug is: +++ +++ bug 1435485 +++ ====================================================================== Description of problem: We have a report of the following BZ not being fixed by it's 4.0.7 clone: BZ1400043 - [Vm Pool] VMs are created with duplicate MAC addresses First try of new version (4.0.7) resulted in 12 VMs with Duplicate MACs. Version-Release number of selected component (if applicable): rhevm-4.0.7.4-0.1.el7ev.noarch (Originally by Germano Veit Michel)
Upgrade to 4.0.7 was from 4.0.6 (Originally by Germano Veit Michel)
One interesting thing is that they have 5-6 VM Pools. Could this increase the probability of hitting the bug? It seems very easy to hit in that environment. (Originally by Germano Veit Michel)
A possible reproduction of the bug - -Make sure the MacPool used by the dc doesn't allow duplicates. 1. Create a template with one vnic ('tmp1'). 2. Create VmPool ('pool') from 'tmp1' with 2 vms ('pool-1' and 'pool-2'). Set the number of prestarted vms as 2. 3. Wait for the vms to be up. 4. Unplug the nic from vm 'pool-1' (lets call its current mac address 'x'). Change its mac address (new mac 'y'). Plug it back. 5. Add a vnic to vm 'pool-2' and set its mac address to 'x' (the old mac address of the vnic we uplugged and plugged). 6. Stop vm 'pool-1'. Result - Both vms 'pool-1' and 'pool-2' have vnic with 'x' mac. Explanation of what causes the bug - when stopping a vm that was started by the pool, the original snapshot (before the run) is restored. The macs of the vnics in the original snapshot are added to the mac pool using 'forceAdd'. It means that it ignores if the mac is already in the pool. So if a mac in the original snapshot was taken by another vm. We will end up with duplicate macs. (Originally by Alona Kaplan)
Latest logs after a new test (with the snapshot related errors fixed) do not show the problem anymore. I believe we are hitting the scenario Alona described, as the MAC Pool was close to been exhausted therefore the chances of another VM taking the MAC of the original snapshot were quite high. (Originally by Germano Veit Michel)
code still need to be merged: https://gerrit.ovirt.org/#/q/status:open+project:ovirt-engine+branch:ovirt-engine-4.1+topic:backported-removeAddForceMac
Verified on - 4.1.7.2-0.1.el7 Summary and results: Stateless scenarios - PASS Statefull/snapshot scenarios - PASS Regression - All new regression bugs which has been caused by the fix for this report has been verified
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHEA-2017:3138