[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v5 4/5] net/announce: Add HMP optional ID
From: |
Dr. David Alan Gilbert (git) |
Subject: |
[Qemu-devel] [PATCH v5 4/5] net/announce: Add HMP optional ID |
Date: |
Thu, 20 Jun 2019 19:47:05 +0100 |
From: "Dr. David Alan Gilbert" <address@hidden>
Add the optional ID to the HMP command.
e.g.
# start an announce for a long time on eth1
migrate_set_parameter announce-rounds 1000
announce_self "eth1" e1
# start an announce on eth2
announce_self "eth2" e2
# Change e1 to be announcing on eth1 and eth3
announce_self "eth1,eth3" e1
# Cancel e1
migrate_set_parameter announce-rounds 0
announce_self "" e1
Signed-off-by: Dr. David Alan Gilbert <address@hidden>
---
hmp-commands.hx | 7 ++++---
monitor/hmp-cmds.c | 3 +++
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/hmp-commands.hx b/hmp-commands.hx
index c2a2df9708..61d0be29d8 100644
--- a/hmp-commands.hx
+++ b/hmp-commands.hx
@@ -955,8 +955,8 @@ ETEXI
{
.name = "announce_self",
- .args_type = "interfaces:s?",
- .params = "[interfaces]",
+ .args_type = "interfaces:s?,id:s?",
+ .params = "[interfaces] [id]",
.help = "Trigger GARP/RARP announcements",
.cmd = hmp_announce_self,
},
@@ -968,7 +968,8 @@ Trigger a round of GARP/RARP broadcasts; this is useful for
explicitly updating
network infrastructure after a reconfiguration or some forms of migration.
The timings of the round are set by the migration announce parameters.
An optional comma separated @var{interfaces} list restricts the announce to the
-named set of interfaces.
+named set of interfaces. An optional @var{id} can be used to start a separate
announce
+timer and to change the parameters of it later.
ETEXI
{
diff --git a/monitor/hmp-cmds.c b/monitor/hmp-cmds.c
index a3d34b12fe..96715c7103 100644
--- a/monitor/hmp-cmds.c
+++ b/monitor/hmp-cmds.c
@@ -1669,12 +1669,15 @@ void hmp_info_snapshots(Monitor *mon, const QDict
*qdict)
void hmp_announce_self(Monitor *mon, const QDict *qdict)
{
const char *interfaces_str = qdict_get_try_str(qdict, "interfaces");
+ const char *id = qdict_get_try_str(qdict, "id");
AnnounceParameters *params = QAPI_CLONE(AnnounceParameters,
migrate_announce_params());
qapi_free_strList(params->interfaces);
params->interfaces = strList_from_comma_list(interfaces_str);
params->has_interfaces = params->interfaces != NULL;
+ params->id = g_strdup(id);
+ params->has_id = !!params->id;
qmp_announce_self(params, NULL);
qapi_free_AnnounceParameters(params);
}
--
2.21.0
- [Qemu-devel] [PATCH v5 0/5] network announce; interface selection & IDs, Dr. David Alan Gilbert (git), 2019/06/20
- [Qemu-devel] [PATCH v5 2/5] net/announce: Add HMP optional interface list, Dr. David Alan Gilbert (git), 2019/06/20
- [Qemu-devel] [PATCH v5 3/5] net/announce: Add optional ID, Dr. David Alan Gilbert (git), 2019/06/20
- [Qemu-devel] [PATCH v5 1/5] net/announce: Allow optional list of interfaces, Dr. David Alan Gilbert (git), 2019/06/20
- [Qemu-devel] [PATCH v5 4/5] net/announce: Add HMP optional ID,
Dr. David Alan Gilbert (git) <=
- [Qemu-devel] [PATCH v5 5/5] net/announce: Expand test for stopping self announce, Dr. David Alan Gilbert (git), 2019/06/20
- Re: [Qemu-devel] [PATCH v5 0/5] network announce; interface selection & IDs, Jason Wang, 2019/06/26