Comment 3 for bug 1040255

Revision history for this message
Artem Andreev (just-wow) wrote :

The root of the problem is the hairpin mode being turned off on domain's NICs which causes packets to be lost. By default libvirt creates domains (instances) with hairpin mode set to off and then nova re-enables it with self._enable_hairpin(instance) call. Since in Folsom snapshot method uses self._create_domain to restore instance's state the _enable_hairpin doesn't get called. The possible solution is to move _enable_hairpin call from self._create_domain_and_network into self._create_domain method. Seems ambiguous to me and requires additional consideration by a veteran. However the patch is attached to the bug.

PS: Since the problem is reproducible in the Essex and the fix is rather trivial there the patch is going to be submitted to gerrit straightaway.