aboutsummaryrefslogtreecommitdiff
path: root/net/announce.c
diff options
context:
space:
mode:
authorDr. David Alan Gilbert <dgilbert@redhat.com>2019-02-27 13:24:11 +0000
committerJason Wang <jasowang@redhat.com>2019-03-05 11:27:41 +0800
commita06cd488d83963faa4e7c1b8314c55f1e8f605e6 (patch)
treedaba23751ff7873b8e672ee80ac2165c30549477 /net/announce.c
parentb2c929f02ba37b206144735313af10fb9cc5d1a4 (diff)
downloadqemu-a06cd488d83963faa4e7c1b8314c55f1e8f605e6.zip
qemu-a06cd488d83963faa4e7c1b8314c55f1e8f605e6.tar.gz
qemu-a06cd488d83963faa4e7c1b8314c55f1e8f605e6.tar.bz2
qmp: Add announce-self command
Add a qmp command that can trigger guest announcements. It uses its own announce-timer instance, and parameters passed to it explicitly in the command. Like most qmp commands, it's in the main thread/bql, so there's no racing with any outstanding timer. Based on work of Germano Veit Michel <germano@redhat.com> and 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>
Diffstat (limited to 'net/announce.c')
-rw-r--r--net/announce.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/net/announce.c b/net/announce.c
index 070f37a..91e9a6e 100644
--- a/net/announce.c
+++ b/net/announce.c
@@ -12,6 +12,7 @@
#include "net/net.h"
#include "qapi/clone-visitor.h"
#include "qapi/qapi-visit-net.h"
+#include "qapi/qapi-commands-net.h"
#include "trace.h"
int64_t qemu_announce_timer_step(AnnounceTimer *timer)
@@ -131,3 +132,9 @@ void qemu_announce_self(AnnounceTimer *timer, AnnounceParameters *params)
qemu_announce_timer_del(timer);
}
}
+
+void qmp_announce_self(AnnounceParameters *params, Error **errp)
+{
+ static AnnounceTimer announce_timer;
+ qemu_announce_self(&announce_timer, params);
+}