On 27.05.26 22:11, Vladimir Sementsov-Ogievskiy wrote:
diff --git a/qapi/net.json b/qapi/net.json
index 1a6382825c5..c5d87ba308b 100644
--- a/qapi/net.json
+++ b/qapi/net.json
@@ -425,6 +425,22 @@
# @poll-us: maximum number of microseconds that could be spent on busy
# polling for tap (since 2.7)
#
+# @incoming-fds: do not open or create any TAP devices. Prepare for
+# getting TAP file descriptors from incoming migration stream.
+# The option is incompatible with any of @fd, @fds, @helper, @br,
+# @ifname, @sndbuf and @vnet_hdr options, and requires @script and
+# @downscript be explicitly set to nothing (empty string or "no"),
+# and requires also @local-migration-supported to be true, "local"
+# migration parameter be set as well, and QEMU being in incoming
+# migration state. (Since 11.1)
+#
+# @local-migration-supported: enable local migration for this TAP
+# backend. When set, local migration is enabled/disabled by
+# "local" migration parameter for this TAP backend. When unset,
+# "local" migration parameter is ignored for this TAP backend.
+# (Since 11.1. Defaults to true for MT >= 11.1, and to false for
+# MT < 11.1)
+#
# Since: 1.2
##
{ 'struct': 'NetdevTapOptions',
@@ -443,7 +459,9 @@
'*vhostfds': 'str',
'*vhostforce': 'bool',
'*queues': 'uint32',
- '*poll-us': 'uint32'} }
+ '*poll-us': 'uint32',
+ '*incoming-fds': 'bool',
+ '*local-migration-supported': 'bool' } }
##
# @NetdevSocketOptions:
squash in, as discussed here
https://lore.kernel.org/qemu-devel/[email protected]/
diff --git a/qapi/net.json b/qapi/net.json
index c5d87ba308b..a71dc7f1d4c 100644
--- a/qapi/net.json
+++ b/qapi/net.json
@@ -441,6 +441,10 @@
# (Since 11.1. Defaults to true for MT >= 11.1, and to false for
# MT < 11.1)
#
+# Features:
+#
+# @unstable: Member @incoming-fds is experimental
+#
# Since: 1.2
##
{ 'struct': 'NetdevTapOptions',
@@ -460,7 +464,7 @@
'*vhostforce': 'bool',
'*queues': 'uint32',
'*poll-us': 'uint32',
- '*incoming-fds': 'bool',
+ '*incoming-fds': { 'type': 'bool', 'features' : [ 'unstable' ] },
'*local-migration-supported': 'bool' } }
##
--
Best regards,
Vladimir