On 2014-12-02 17:03, Jiri Denemark wrote:
On Mon, Dec 01, 2014 at 17:00:03 +0100, Cristian Klein wrote:
> This reverts commit 46a811db0731cedaea0153fc223faa6096cee5b5. It causes
> random problems in OpenStack, which displays the following error:
>
> """
> error : virNWFilterObjAssignDef:3075 : operation failed: filter
> 'nova-no-nd-reflection' already exists with uuid
> ef783c9f-ae1c-4242-8cd5-9cef5ec4fa7a
> """
>
> Special thanks to Vojtech Cima for investigating.
>
> Signed-off-by: Cristian Klein <cristiklein(a)gmail.com>
> ---
> src/conf/nwfilter_conf.c | 11 -----------
> 1 file changed, 11 deletions(-)
>
> diff --git a/src/conf/nwfilter_conf.c b/src/conf/nwfilter_conf.c
> index 074d745..7abeff8 100644
> --- a/src/conf/nwfilter_conf.c
> +++ b/src/conf/nwfilter_conf.c
> @@ -3065,17 +3065,6 @@ virNWFilterObjAssignDef(virNWFilterObjListPtr nwfilters,
> return NULL;
> }
> virNWFilterObjUnlock(nwfilter);
> - } else {
> - nwfilter = virNWFilterObjFindByName(nwfilters, def->name);
> - if (nwfilter) {
> - char uuidstr[VIR_UUID_STRING_BUFLEN];
> - virUUIDFormat(nwfilter->def->uuid, uuidstr);
> - virReportError(VIR_ERR_OPERATION_FAILED,
> - _("filter '%s' already exists with uuid
%s"),
> - def->name, uuidstr);
> - virNWFilterObjUnlock(nwfilter);
> - return NULL;
> - }
> }
>
> if (virNWFilterDefLoopDetect(nwfilters, def) < 0) {
NACK to this one. Not only this is completely unrelated to post-copy
migration but it is also wrong. If openstack is trying to redefine an
existing nwfilter but uses different UUID (or no UUID at all), it's
openstack which needs to be fixed.
I just observed that later versions of OpenStack fixed this. Sorry for
the noise. For future references:
https://review.openstack.org/#/c/122721/
https://review.openstack.org/#/c/122721/1/nova/virt/libvirt/firewall.py
Cristian