1
0
mirror of https://passt.top/passt synced 2024-10-01 03:25:48 +00:00

libvirt: Rebase to latest upstream

The libvirt patch is now rebased on top of current HEAD, f0e5100f002a

Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
This commit is contained in:
Stefano Brivio 2021-04-22 13:38:32 +02:00
parent af3c06fdf2
commit 5b0c88d4ef

View File

@ -1,6 +1,7 @@
From 62e95cb4b5708eca7860139dffef22e65b29514c Mon Sep 17 00:00:00 2001 From 7afbbab2ccada16c87e1095e85184bb21c028012 Mon Sep 17 00:00:00 2001
Message-Id: <7afbbab2ccada16c87e1095e85184bb21c028012.1619091487.git.sbrivio@redhat.com>
From: Stefano Brivio <sbrivio@redhat.com> From: Stefano Brivio <sbrivio@redhat.com>
Date: Sat, 20 Mar 2021 07:16:15 +0100 Date: Wed, 21 Apr 2021 19:29:31 +0200
Subject: [PATCH] conf: Introduce support for UNIX domain socket as qemu netdev Subject: [PATCH] conf: Introduce support for UNIX domain socket as qemu netdev
back-end back-end
@ -21,10 +22,10 @@ Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
6 files changed, 160 insertions(+), 56 deletions(-) 6 files changed, 160 insertions(+), 56 deletions(-)
diff --git a/docs/formatdomain.rst b/docs/formatdomain.rst diff --git a/docs/formatdomain.rst b/docs/formatdomain.rst
index 9392c80113..b5b642e91a 100644 index 1b9b2216111c..87c3c956fa23 100644
--- a/docs/formatdomain.rst --- a/docs/formatdomain.rst
+++ b/docs/formatdomain.rst +++ b/docs/formatdomain.rst
@@ -4995,18 +4995,20 @@ must be from the multicast address block. @@ -5010,18 +5010,20 @@ must be from the multicast address block.
</devices> </devices>
... ...
@ -55,12 +56,12 @@ index 9392c80113..b5b642e91a 100644
:: ::
@@ -5024,6 +5026,25 @@ appropriate routing. @@ -5039,6 +5041,25 @@ appropriate routing.
</devices> </devices>
... ...
+Named UNIX domain sockets can be specified as follows: +Named UNIX domain sockets can be specified as follows:
+:since:`Since 7.2.0, qemu` +:since:`Since 7.3.0, qemu`
+ +
+:: +::
+ +
@ -82,10 +83,10 @@ index 9392c80113..b5b642e91a 100644
UDP unicast tunnel UDP unicast tunnel
diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng
index 1dbfc68f18..350d6969c0 100644 index a2e5c50c1d77..7c0a90ba199b 100644
--- a/docs/schemas/domaincommon.rng --- a/docs/schemas/domaincommon.rng
+++ b/docs/schemas/domaincommon.rng +++ b/docs/schemas/domaincommon.rng
@@ -3125,10 +3125,7 @@ @@ -3161,10 +3161,7 @@
</group> </group>
<group> <group>
<attribute name="type"> <attribute name="type">
@ -97,7 +98,7 @@ index 1dbfc68f18..350d6969c0 100644
</attribute> </attribute>
<interleave> <interleave>
<element name="source"> <element name="source">
@@ -3143,6 +3140,30 @@ @@ -3179,6 +3176,30 @@
<ref name="interface-options"/> <ref name="interface-options"/>
</interleave> </interleave>
</group> </group>
@ -128,7 +129,7 @@ index 1dbfc68f18..350d6969c0 100644
<group> <group>
<attribute name="type"> <attribute name="type">
<value>udp</value> <value>udp</value>
@@ -3174,14 +3195,21 @@ @@ -3210,14 +3231,21 @@
</attribute> </attribute>
<interleave> <interleave>
<element name="source"> <element name="source">
@ -158,10 +159,10 @@ index 1dbfc68f18..350d6969c0 100644
</element> </element>
<ref name="interface-options"/> <ref name="interface-options"/>
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 7671050134..55543c47ce 100644 index f8a462fb3b99..8c6a5d4f974e 100644
--- a/src/conf/domain_conf.c --- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c
@@ -2569,8 +2569,9 @@ virDomainNetDefFree(virDomainNetDefPtr def) @@ -2562,8 +2562,9 @@ virDomainNetDefFree(virDomainNetDef *def)
case VIR_DOMAIN_NET_TYPE_CLIENT: case VIR_DOMAIN_NET_TYPE_CLIENT:
case VIR_DOMAIN_NET_TYPE_MCAST: case VIR_DOMAIN_NET_TYPE_MCAST:
case VIR_DOMAIN_NET_TYPE_UDP: case VIR_DOMAIN_NET_TYPE_UDP:
@ -173,7 +174,7 @@ index 7671050134..55543c47ce 100644
break; break;
case VIR_DOMAIN_NET_TYPE_NETWORK: case VIR_DOMAIN_NET_TYPE_NETWORK:
@@ -10792,6 +10793,7 @@ virDomainNetDefParseXML(virDomainXMLOptionPtr xmlopt, @@ -10555,6 +10556,7 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt,
g_autofree char *downscript = NULL; g_autofree char *downscript = NULL;
g_autofree char *address = NULL; g_autofree char *address = NULL;
g_autofree char *port = NULL; g_autofree char *port = NULL;
@ -181,7 +182,7 @@ index 7671050134..55543c47ce 100644
g_autofree char *localaddr = NULL; g_autofree char *localaddr = NULL;
g_autofree char *localport = NULL; g_autofree char *localport = NULL;
g_autofree char *model = NULL; g_autofree char *model = NULL;
@@ -10935,7 +10937,7 @@ virDomainNetDefParseXML(virDomainXMLOptionPtr xmlopt, @@ -10699,7 +10701,7 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt,
" <interface type='%s'>"), type); " <interface type='%s'>"), type);
goto error; goto error;
} }
@ -190,7 +191,7 @@ index 7671050134..55543c47ce 100644
(def->type == VIR_DOMAIN_NET_TYPE_SERVER || (def->type == VIR_DOMAIN_NET_TYPE_SERVER ||
def->type == VIR_DOMAIN_NET_TYPE_CLIENT || def->type == VIR_DOMAIN_NET_TYPE_CLIENT ||
def->type == VIR_DOMAIN_NET_TYPE_MCAST || def->type == VIR_DOMAIN_NET_TYPE_MCAST ||
@@ -10943,6 +10945,7 @@ virDomainNetDefParseXML(virDomainXMLOptionPtr xmlopt, @@ -10707,6 +10709,7 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt,
virXMLNodeNameEqual(cur, "source")) { virXMLNodeNameEqual(cur, "source")) {
address = virXMLPropString(cur, "address"); address = virXMLPropString(cur, "address");
port = virXMLPropString(cur, "port"); port = virXMLPropString(cur, "port");
@ -198,7 +199,7 @@ index 7671050134..55543c47ce 100644
if (!localaddr && def->type == VIR_DOMAIN_NET_TYPE_UDP) { if (!localaddr && def->type == VIR_DOMAIN_NET_TYPE_UDP) {
xmlNodePtr tmpnode = ctxt->node; xmlNodePtr tmpnode = ctxt->node;
ctxt->node = cur; ctxt->node = cur;
@@ -11186,6 +11189,27 @@ virDomainNetDefParseXML(virDomainXMLOptionPtr xmlopt, @@ -10950,6 +10953,27 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt,
case VIR_DOMAIN_NET_TYPE_CLIENT: case VIR_DOMAIN_NET_TYPE_CLIENT:
case VIR_DOMAIN_NET_TYPE_SERVER: case VIR_DOMAIN_NET_TYPE_SERVER:
@ -226,7 +227,7 @@ index 7671050134..55543c47ce 100644
case VIR_DOMAIN_NET_TYPE_MCAST: case VIR_DOMAIN_NET_TYPE_MCAST:
case VIR_DOMAIN_NET_TYPE_UDP: case VIR_DOMAIN_NET_TYPE_UDP:
if (port == NULL) { if (port == NULL) {
@@ -11194,7 +11218,7 @@ virDomainNetDefParseXML(virDomainXMLOptionPtr xmlopt, @@ -10958,7 +10982,7 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt,
"specified with socket interface")); "specified with socket interface"));
goto error; goto error;
} }
@ -235,7 +236,7 @@ index 7671050134..55543c47ce 100644
virReportError(VIR_ERR_INTERNAL_ERROR, "%s", virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
_("Cannot parse <source> 'port' attribute " _("Cannot parse <source> 'port' attribute "
"with socket interface")); "with socket interface"));
@@ -11211,7 +11235,7 @@ virDomainNetDefParseXML(virDomainXMLOptionPtr xmlopt, @@ -10975,7 +10999,7 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt,
goto error; goto error;
} }
} else { } else {
@ -244,7 +245,7 @@ index 7671050134..55543c47ce 100644
} }
if (def->type != VIR_DOMAIN_NET_TYPE_UDP) if (def->type != VIR_DOMAIN_NET_TYPE_UDP)
@@ -11223,7 +11247,8 @@ virDomainNetDefParseXML(virDomainXMLOptionPtr xmlopt, @@ -10987,7 +11011,8 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt,
"specified with socket interface")); "specified with socket interface"));
goto error; goto error;
} }
@ -254,7 +255,7 @@ index 7671050134..55543c47ce 100644
virReportError(VIR_ERR_INTERNAL_ERROR, "%s", virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
_("Cannot parse <local> 'port' attribute " _("Cannot parse <local> 'port' attribute "
"with socket interface")); "with socket interface"));
@@ -11236,7 +11261,7 @@ virDomainNetDefParseXML(virDomainXMLOptionPtr xmlopt, @@ -11000,7 +11025,7 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt,
"specified with socket interface")); "specified with socket interface"));
goto error; goto error;
} else { } else {
@ -263,7 +264,7 @@ index 7671050134..55543c47ce 100644
} }
break; break;
@@ -26219,15 +26244,22 @@ virDomainNetDefFormat(virBufferPtr buf, @@ -25940,15 +25965,22 @@ virDomainNetDefFormat(virBuffer *buf,
case VIR_DOMAIN_NET_TYPE_SERVER: case VIR_DOMAIN_NET_TYPE_SERVER:
case VIR_DOMAIN_NET_TYPE_CLIENT: case VIR_DOMAIN_NET_TYPE_CLIENT:
@ -290,7 +291,7 @@ index 7671050134..55543c47ce 100644
} }
sourceLines++; sourceLines++;
@@ -26239,8 +26271,8 @@ virDomainNetDefFormat(virBufferPtr buf, @@ -25960,8 +25992,8 @@ virDomainNetDefFormat(virBuffer *buf,
virBufferAdjustIndent(buf, 2); virBufferAdjustIndent(buf, 2);
virBufferAsprintf(buf, "<local address='%s' port='%d'/>\n", virBufferAsprintf(buf, "<local address='%s' port='%d'/>\n",
@ -302,13 +303,13 @@ index 7671050134..55543c47ce 100644
break; break;
diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
index 87bc7e8625..3cc0842eed 100644 index 7688f17b18cd..054b08330c8c 100644
--- a/src/conf/domain_conf.h --- a/src/conf/domain_conf.h
+++ b/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h
@@ -1042,11 +1042,14 @@ struct _virDomainNetDef { @@ -1055,11 +1055,14 @@ struct _virDomainNetDef {
virDomainNetTeamingInfoPtr teaming; virDomainNetTeamingInfo *teaming;
union { union {
virDomainChrSourceDefPtr vhostuser; virDomainChrSourceDef *vhostuser;
- struct { - struct {
- char *address; - char *address;
- int port; - int port;
@ -326,10 +327,10 @@ index 87bc7e8625..3cc0842eed 100644
struct { struct {
char *name; char *name;
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index 5717f7b98d..c1687e582e 100644 index 2ceff155124e..dbef58f37879 100644
--- a/src/qemu/qemu_command.c --- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c
@@ -3639,37 +3639,55 @@ qemuBuildHostNetStr(virDomainNetDefPtr net, @@ -3713,37 +3713,55 @@ qemuBuildHostNetStr(virDomainNetDef *net,
break; break;
case VIR_DOMAIN_NET_TYPE_CLIENT: case VIR_DOMAIN_NET_TYPE_CLIENT:
@ -400,10 +401,10 @@ index 5717f7b98d..c1687e582e 100644
break; break;
diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c
index a66354426d..8ca86f9c53 100644 index 4344edc75b80..69ef7abd0ee2 100644
--- a/src/qemu/qemu_hotplug.c --- a/src/qemu/qemu_hotplug.c
+++ b/src/qemu/qemu_hotplug.c +++ b/src/qemu/qemu_hotplug.c
@@ -3752,9 +3752,11 @@ qemuDomainChangeNet(virQEMUDriverPtr driver, @@ -3741,9 +3741,11 @@ qemuDomainChangeNet(virQEMUDriver *driver,
case VIR_DOMAIN_NET_TYPE_CLIENT: case VIR_DOMAIN_NET_TYPE_CLIENT:
case VIR_DOMAIN_NET_TYPE_MCAST: case VIR_DOMAIN_NET_TYPE_MCAST:
case VIR_DOMAIN_NET_TYPE_UDP: case VIR_DOMAIN_NET_TYPE_UDP:
@ -419,5 +420,5 @@ index a66354426d..8ca86f9c53 100644
} }
break; break;
-- --
2.28.0 2.29.2