[libvirt] [PATCH] Revert "vhost-user: add support reconnect for vhost-user ports"

This reverts commit edaf4ebe95a5995585c8ab7bc5b92887286d4431. This uses "reconnect" as attribute for <source> element, but we already have a <reconnect> element for <source> element for chardev devices. Since this is the same feature for different device it should be presented in XML the same way. Signed-off-by: Pavel Hrdina <phrdina@redhat.com> --- docs/formatdomain.html.in | 5 +--- docs/schemas/domaincommon.rng | 5 ---- src/conf/domain_conf.c | 28 ++-------------------- .../qemuxml2argv-net-vhostuser-multiq.args | 2 +- .../qemuxml2argv-net-vhostuser-multiq.xml | 2 +- 5 files changed, 5 insertions(+), 37 deletions(-) diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in index 1602ed3e95..9ce4620c65 100644 --- a/docs/formatdomain.html.in +++ b/docs/formatdomain.html.in @@ -5673,7 +5673,7 @@ qemu-kvm -net nic,model=? /dev/null </interface> <interface type='vhostuser'> <mac address='52:54:00:3b:83:1b'/> - <source type='unix' path='/tmp/vhost2.sock' mode='client' reconnect='10'/> + <source type='unix' path='/tmp/vhost2.sock' mode='client'/> <model type='virtio'/> <driver queues='5'/> </interface> @@ -5689,9 +5689,6 @@ qemu-kvm -net nic,model=? /dev/null are supported. vhost-user requires the virtio model type, thus the <code><model></code> element is mandatory. - <span class="since">Since 3.7.0</span> the element has an optional - attribute <code>reconnect</code> which configures reconnect timeout - (in seconds) if the connection is lost. </p> <h5><a id="elementNwfilter">Traffic filtering with NWFilter</a></h5> diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng index 36e2966f21..76852abb3c 100644 --- a/docs/schemas/domaincommon.rng +++ b/docs/schemas/domaincommon.rng @@ -2388,11 +2388,6 @@ <value>client</value> </choice> </attribute> - <optional> - <attribute name="reconnect"> - <ref name='positiveInteger'/> - </attribute> - </optional> <empty/> </element> <ref name="interface-options"/> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index f3b4dd33da..cc5e79b70b 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -10240,7 +10240,6 @@ virDomainNetDefParseXML(virDomainXMLOptionPtr xmlopt, char *vhostuser_mode = NULL; char *vhostuser_path = NULL; char *vhostuser_type = NULL; - char *vhostuser_reconnect = NULL; char *trustGuestRxFilters = NULL; char *vhost_path = NULL; virNWFilterHashTablePtr filterparams = NULL; @@ -10327,12 +10326,11 @@ virDomainNetDefParseXML(virDomainXMLOptionPtr xmlopt, goto error; } } else if (!vhostuser_path && !vhostuser_mode && !vhostuser_type - && !vhostuser_reconnect && def->type == VIR_DOMAIN_NET_TYPE_VHOSTUSER - && virXMLNodeNameEqual(cur, "source")) { + && def->type == VIR_DOMAIN_NET_TYPE_VHOSTUSER && + virXMLNodeNameEqual(cur, "source")) { vhostuser_type = virXMLPropString(cur, "type"); vhostuser_path = virXMLPropString(cur, "path"); vhostuser_mode = virXMLPropString(cur, "mode"); - vhostuser_reconnect = virXMLPropString(cur, "reconnect"); } else if (!def->virtPortProfile && virXMLNodeNameEqual(cur, "virtualport")) { if (def->type == VIR_DOMAIN_NET_TYPE_NETWORK) { @@ -10554,24 +10552,8 @@ virDomainNetDefParseXML(virDomainXMLOptionPtr xmlopt, if (STREQ(vhostuser_mode, "server")) { def->data.vhostuser->data.nix.listen = true; - if (vhostuser_reconnect) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", - _("'reconnect' attribute unsupported " - "'server' mode for <interface type='vhostuser'>")); - goto error; - } } else if (STREQ(vhostuser_mode, "client")) { def->data.vhostuser->data.nix.listen = false; - if (vhostuser_reconnect) { - def->data.vhostuser->data.nix.reconnect.enabled = true; - if (virStrToLong_ui(vhostuser_reconnect, NULL, 10, - &def->data.vhostuser->data.nix.reconnect.timeout) < 0) { - virReportError(VIR_ERR_INTERNAL_ERROR, - _("invalid vhostuser reconnect value %s"), - vhostuser_reconnect); - goto error; - } - } } else { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("Wrong <source> 'mode' attribute " @@ -11016,7 +10998,6 @@ virDomainNetDefParseXML(virDomainXMLOptionPtr xmlopt, VIR_FREE(portgroup); VIR_FREE(address); VIR_FREE(port); - VIR_FREE(vhostuser_reconnect); VIR_FREE(vhostuser_type); VIR_FREE(vhostuser_path); VIR_FREE(vhostuser_mode); @@ -23002,11 +22983,6 @@ virDomainNetDefFormat(virBufferPtr buf, virBufferAsprintf(buf, " mode='%s'", def->data.vhostuser->data.nix.listen ? "server" : "client"); - if (def->data.vhostuser->data.nix.reconnect.enabled == true) { - virBufferAsprintf(buf, " reconnect='%u'", - def->data.vhostuser->data.nix.reconnect.timeout); - } - sourceLines++; } break; diff --git a/tests/qemuxml2argvdata/qemuxml2argv-net-vhostuser-multiq.args b/tests/qemuxml2argvdata/qemuxml2argv-net-vhostuser-multiq.args index 996828f7d8..b69ebd8bad 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-net-vhostuser-multiq.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-net-vhostuser-multiq.args @@ -32,7 +32,7 @@ addr=0x4 \ -netdev socket,listen=:2015,id=hostnet2 \ -device rtl8139,netdev=hostnet2,id=net2,mac=52:54:00:95:db:c0,bus=pci.0,\ addr=0x5 \ --chardev socket,id=charnet3,path=/tmp/vhost2.sock,reconnect=10 \ +-chardev socket,id=charnet3,path=/tmp/vhost2.sock \ -netdev vhost-user,chardev=charnet3,queues=4,id=hostnet3 \ -device virtio-net-pci,mq=on,vectors=10,netdev=hostnet3,id=net3,\ mac=52:54:00:ee:96:6d,bus=pci.0,addr=0x6 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-net-vhostuser-multiq.xml b/tests/qemuxml2argvdata/qemuxml2argv-net-vhostuser-multiq.xml index 7eb6fa0bbf..d5c42fe62c 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-net-vhostuser-multiq.xml +++ b/tests/qemuxml2argvdata/qemuxml2argv-net-vhostuser-multiq.xml @@ -40,7 +40,7 @@ </interface> <interface type='vhostuser'> <mac address='52:54:00:ee:96:6d'/> - <source type='unix' path='/tmp/vhost2.sock' mode='client' reconnect='10'/> + <source type='unix' path='/tmp/vhost2.sock' mode='client'/> <model type='virtio'/> <driver queues='4'/> </interface> -- 2.13.5

On Wed, Sep 20, 2017 at 04:01:14PM +0200, Pavel Hrdina wrote:
This reverts commit edaf4ebe95a5995585c8ab7bc5b92887286d4431.
This uses "reconnect" as attribute for <source> element, but we already have a <reconnect> element for <source> element for chardev devices.
Since this is the same feature for different device it should be presented in XML the same way.
Ping, we should revert this before next release. Pavel

On Tue, Sep 26, 2017 at 05:14:58PM +0200, Pavel Hrdina wrote:
On Wed, Sep 20, 2017 at 04:01:14PM +0200, Pavel Hrdina wrote:
This reverts commit edaf4ebe95a5995585c8ab7bc5b92887286d4431.
This uses "reconnect" as attribute for <source> element, but we already have a <reconnect> element for <source> element for chardev devices.
Since this is the same feature for different device it should be presented in XML the same way.
Ping, we should revert this before next release.
ACK Erik

On 09/20/2017 04:01 PM, Pavel Hrdina wrote:
This reverts commit edaf4ebe95a5995585c8ab7bc5b92887286d4431.
This uses "reconnect" as attribute for <source> element, but we already have a <reconnect> element for <source> element for chardev devices.
Since this is the same feature for different device it should be presented in XML the same way.
Signed-off-by: Pavel Hrdina <phrdina@redhat.com> --- docs/formatdomain.html.in | 5 +--- docs/schemas/domaincommon.rng | 5 ---- src/conf/domain_conf.c | 28 ++-------------------- .../qemuxml2argv-net-vhostuser-multiq.args | 2 +- .../qemuxml2argv-net-vhostuser-multiq.xml | 2 +- 5 files changed, 5 insertions(+), 37 deletions(-)
ACK and safe for the freeze. Michal
participants (3)
-
Erik Skultety
-
Michal Privoznik
-
Pavel Hrdina