migration: Move qjson.[ch] to migration/
Type QJSON lets you build JSON text. Its interface mirrors (a subset of) abstract JSON syntax. QAPI output visitors also produce JSON text. They assert their preconditions and invariants, and therefore abort on incorrect use. Contrastingly, QJSON does *not* detect incorrect use. It happily produces invalid JSON then. This is what migration wants. QJSON was designed for migration, and migration is its only user. Move it to migration/ for proper coverage by MAINTAINERS, and to deter accidental use outside migration. [Pointed out by Eric: QJSON was added in commits 0457d07..b174257 -- Amit] Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Message-Id: <1462380558-2030-2-git-send-email-armbru@redhat.com> Signed-off-by: Amit Shah <amit.shah@redhat.com>
This commit is contained in:
parent
65603e2fc1
commit
17b74b9867
@ -52,7 +52,6 @@ common-obj-$(CONFIG_LINUX) += fsdev/
|
||||
common-obj-y += migration/
|
||||
common-obj-y += qemu-char.o #aio.o
|
||||
common-obj-y += page_cache.o
|
||||
common-obj-y += qjson.o
|
||||
|
||||
common-obj-$(CONFIG_SPICE) += spice-qemu-char.o
|
||||
|
||||
|
@ -29,7 +29,7 @@
|
||||
#ifndef CONFIG_USER_ONLY
|
||||
#include <migration/qemu-file.h>
|
||||
#endif
|
||||
#include <qjson.h>
|
||||
#include "migration/qjson.h"
|
||||
|
||||
typedef void SaveStateHandler(QEMUFile *f, void *opaque);
|
||||
typedef int LoadStateHandler(QEMUFile *f, void *opaque, int version_id);
|
||||
|
@ -2,6 +2,7 @@ common-obj-y += migration.o tcp.o
|
||||
common-obj-y += vmstate.o
|
||||
common-obj-y += qemu-file.o qemu-file-buf.o qemu-file-unix.o qemu-file-stdio.o
|
||||
common-obj-y += xbzrle.o postcopy-ram.o
|
||||
common-obj-y += qjson.o
|
||||
|
||||
common-obj-$(CONFIG_RDMA) += rdma.o
|
||||
common-obj-$(CONFIG_POSIX) += exec.o unix.o fd.o
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* QEMU JSON writer
|
||||
* A simple JSON writer
|
||||
*
|
||||
* Copyright Alexander Graf
|
||||
*
|
||||
@ -11,12 +11,23 @@
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Type QJSON lets you build JSON text. Its interface mirrors (a
|
||||
* subset of) abstract JSON syntax.
|
||||
*
|
||||
* It does *not* detect incorrect use. It happily produces invalid
|
||||
* JSON then. This is what migration wants.
|
||||
*
|
||||
* QAPI output visitors also produce JSON text. However, they do
|
||||
* assert their preconditions and invariants, and therefore abort on
|
||||
* incorrect use.
|
||||
*/
|
||||
|
||||
#include "qemu/osdep.h"
|
||||
#include <qapi/qmp/qstring.h>
|
||||
#include <glib.h>
|
||||
#include <qjson.h>
|
||||
#include <qemu/module.h>
|
||||
#include <qom/object.h>
|
||||
#include "qapi/qmp/qstring.h"
|
||||
#include "migration/qjson.h"
|
||||
#include "qemu/module.h"
|
||||
#include "qom/object.h"
|
||||
|
||||
struct QJSON {
|
||||
Object obj;
|
@ -6,7 +6,6 @@
|
||||
#include "qemu/bitops.h"
|
||||
#include "qemu/error-report.h"
|
||||
#include "trace.h"
|
||||
#include "qjson.h"
|
||||
|
||||
static void vmstate_subsection_save(QEMUFile *f, const VMStateDescription *vmsd,
|
||||
void *opaque, QJSON *vmdesc);
|
||||
|
@ -439,7 +439,7 @@ tests/test-qdev-global-props$(EXESUF): tests/test-qdev-global-props.o \
|
||||
$(test-qapi-obj-y)
|
||||
tests/test-vmstate$(EXESUF): tests/test-vmstate.o \
|
||||
migration/vmstate.o migration/qemu-file.o migration/qemu-file-buf.o \
|
||||
migration/qemu-file-unix.o qjson.o \
|
||||
migration/qemu-file-unix.o migration/qjson.o \
|
||||
$(test-qom-obj-y)
|
||||
tests/test-timed-average$(EXESUF): tests/test-timed-average.o qemu-timer.o \
|
||||
$(test-util-obj-y)
|
||||
|
Loading…
Reference in New Issue
Block a user