Yeah, the '--may-exist' could be removed, it is not useful. >-----Original Message----- >From: Michal Privoznik [mailto:mprivozn@xxxxxxxxxx] >Sent: Thursday, July 03, 2014 8:39 PM >To: Lichunhe; libvir-list@xxxxxxxxxx >Subject: Re: [PATCH]util:ovs:Delete port if it is exist when add port > >On 03.07.2014 13:57, Lichunhe wrote: >> If the ovs service stop abnormal, or host cold reboot, vm is destroyed >> after ovs service stop. The ovs port which connect to interface of vm >> will not be clear. When the ovs service restart, recover configuration >> from db, but the interface is no exist, port recovery failed, and then >> vm restart on the same host, libvirt add port again, but the port >> configuration is same as before, ovs will not connect the interface, >> only store the configuration in db. Below will trigger this problem, >> >> virsh start vm >> service openvswitch-switch stop >> virsh destroy vm >> service openvswitch-switch start >> virsh start vm >> >> >> Signed-off-by: Chunhe Li <lichunhe@xxxxxxxxxx> >> --- >> >> src/util/virnetdevopenvswitch.c | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/src/util/virnetdevopenvswitch.c >> b/src/util/virnetdevopenvswitch.c index 9bcbfb1..dd601c0 100644 >> --- a/src/util/virnetdevopenvswitch.c >> +++ b/src/util/virnetdevopenvswitch.c >> @@ -84,7 +84,8 @@ int virNetDevOpenvswitchAddPort(const char *brname, >> const char *ifname, >> >> cmd = virCommandNew(OVSVSCTL); >> >> - virCommandAddArgList(cmd, "--timeout=5", "--", "--may-exist", >"add-port", >> + virCommandAddArgList(cmd, "--timeout=5", "--", "--if-exists", >"del-port", >> + ifname, "--", "--may-exist", "add-port", >> brname, ifname, NULL); > >So what's the meaning of '--may-exist' then? Does it do anything useful after all? > >Michal -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list