Add an HMP command to trigger self annocements.
Unlike the QMP command (which takes a set of parameters), the HMP
command reuses the set of parameters used for migration.
Signend-off-by: Vladislav Yasevich <vyasevic@redhat.com>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
NUL characters, after the ring buffer lost data, and when reading
stops because the size limit is reached.
+ETEXI
+
+ {
+ .name = "announce_self",
+ .args_type = "",
+ .params = "",
+ .help = "Trigger GARP/RARP announcements",
+ .cmd = hmp_announce_self,
+ },
+
+STEXI
+@item announce_self
+@findex announce_self
+Trigger a round of GARP/RARP broadcasts; this is useful for explicitly updating the
+network infrastructure after a reconfiguration or some forms of migration.
+The timings of the round are set by the migration announce parameters.
ETEXI
{
}
+void hmp_announce_self(Monitor *mon, const QDict *qdict)
+{
+ qmp_announce_self(migrate_announce_params(), NULL);
+}
+
void hmp_migrate_cancel(Monitor *mon, const QDict *qdict)
{
qmp_migrate_cancel(NULL);
void hmp_system_reset(Monitor *mon, const QDict *qdict);
void hmp_system_powerdown(Monitor *mon, const QDict *qdict);
void hmp_exit_preconfig(Monitor *mon, const QDict *qdict);
+void hmp_announce_self(Monitor *mon, const QDict *qdict);
void hmp_cpu(Monitor *mon, const QDict *qdict);
void hmp_memsave(Monitor *mon, const QDict *qdict);
void hmp_pmemsave(Monitor *mon, const QDict *qdict);
static int verbose;
static const char *hmp_cmds[] = {
+ "announce_self",
"boot_set ndc",
"chardev-add null,id=testchardev1",
"chardev-send-break testchardev1",