qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PULL 00/13] Miscellaneous patches for 2020-12-10
@ 2020-12-10 16:31 Markus Armbruster
  2020-12-10 16:31 ` [PULL 01/13] Clean up includes Markus Armbruster
                   ` (13 more replies)
  0 siblings, 14 replies; 16+ messages in thread
From: Markus Armbruster @ 2020-12-10 16:31 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell

The following changes since commit 00ef48ff0de9c3e5834e7e3f6691bbc80d08c114:

  Merge remote-tracking branch 'remotes/kraxel/tags/microvm-20201210-pull-request' into staging (2020-12-10 12:53:01 +0000)

are available in the Git repository at:

  git://repo.or.cz/qemu/armbru.git tags/pull-misc-2020-12-10

for you to fetch changes up to 4eb79bdf87206a223a7ad7a698af519d2ec75c14:

  docs/devel/writing-qmp-commands.txt: Fix docs (2020-12-10 17:16:44 +0100)

----------------------------------------------------------------
Miscellaneous patches for 2020-12-10

----------------------------------------------------------------
Markus Armbruster (12):
      Clean up includes
      qerror: Drop unused QERR_ macros
      qerror: Eliminate QERR_ macros used in just one place
      block: Improve some block-commit, block-stream error messages
      ui: Improve some set_passwd, expire_password error messages
      ui: Improve a client_migrate_info error message
      ui: Tweak a client_migrate_info error message
      qga: Replace an unreachable error by abort()
      qga: Tweak a guest-shutdown error message
      qom: Improve {qom,device}-list-properties error messages
      Tweak a few "Parameter 'NAME' expects THING" error message
      qapi: Normalize version references x.y.0 to just x.y

Zihao Chang (1):
      docs/devel/writing-qmp-commands.txt: Fix docs

 docs/devel/writing-qmp-commands.txt     |  2 +-
 qapi/block-core.json                    | 28 ++++++++++----------
 qapi/block-export.json                  |  6 ++---
 qapi/block.json                         |  2 +-
 qapi/char.json                          |  4 +--
 qapi/control.json                       | 14 +++++-----
 qapi/machine-target.json                | 22 ++++++++--------
 qapi/machine.json                       | 46 ++++++++++++++++-----------------
 qapi/migration.json                     | 16 ++++++------
 qapi/misc-target.json                   |  2 +-
 qapi/misc.json                          | 30 ++++++++++-----------
 qapi/net.json                           |  6 ++---
 qapi/pci.json                           | 12 ++++-----
 qapi/qdev.json                          |  2 +-
 qapi/run-state.json                     | 16 ++++++------
 qapi/ui.json                            | 40 ++++++++++++++--------------
 contrib/vhost-user-gpu/vugbm.h          |  2 --
 contrib/vhost-user-gpu/vugpu.h          |  1 -
 include/hw/block/swim.h                 |  1 -
 include/hw/display/macfb.h              |  1 -
 include/qapi/qmp/qerror.h               | 23 -----------------
 include/qemu/nvdimm-utils.h             |  1 -
 tests/qtest/fuzz/fuzz.h                 |  1 -
 tests/qtest/fuzz/generic_fuzz_configs.h |  1 -
 tools/virtiofsd/fuse_common.h           |  2 --
 tools/virtiofsd/fuse_log.h              |  1 -
 tools/virtiofsd/fuse_lowlevel.h         |  3 ---
 tools/virtiofsd/fuse_misc.h             |  1 -
 tools/virtiofsd/passthrough_seccomp.h   |  1 -
 block/quorum.c                          |  2 +-
 blockdev.c                              | 17 +++++++-----
 chardev/char.c                          |  2 +-
 contrib/vhost-user-gpu/virgl.c          |  1 +
 contrib/vhost-user-gpu/vugbm.c          |  1 +
 contrib/vhost-user-input/main.c         |  1 -
 hw/core/qdev-properties-system.c        |  2 +-
 hw/display/artist.c                     |  1 -
 hw/s390x/s390-pci-vfio.c                |  3 ++-
 monitor/misc.c                          | 12 ++++-----
 monitor/qmp-cmds.c                      | 38 +++++++++++----------------
 net/net.c                               |  2 +-
 qga/commands-win32.c                    |  5 ++--
 qom/qom-qmp-cmds.c                      | 17 +++++-------
 softmmu/qdev-monitor.c                  |  4 +--
 tools/virtiofsd/buffer.c                |  5 ----
 tools/virtiofsd/fuse_log.c              |  2 --
 tools/virtiofsd/fuse_lowlevel.c         | 10 -------
 tools/virtiofsd/fuse_opt.c              |  4 ---
 tools/virtiofsd/fuse_signals.c          |  5 ----
 tools/virtiofsd/fuse_virtio.c           | 10 -------
 tools/virtiofsd/helper.c                |  8 ------
 tools/virtiofsd/passthrough_ll.c        | 12 ---------
 tools/virtiofsd/passthrough_seccomp.c   |  3 ---
 util/nvdimm-utils.c                     |  1 +
 tests/qemu-iotests/040                  | 12 ++++-----
 55 files changed, 180 insertions(+), 287 deletions(-)

-- 
2.26.2



^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PULL 01/13] Clean up includes
  2020-12-10 16:31 [PULL 00/13] Miscellaneous patches for 2020-12-10 Markus Armbruster
@ 2020-12-10 16:31 ` Markus Armbruster
  2020-12-10 16:31 ` [PULL 02/13] qerror: Drop unused QERR_ macros Markus Armbruster
                   ` (12 subsequent siblings)
  13 siblings, 0 replies; 16+ messages in thread
From: Markus Armbruster @ 2020-12-10 16:31 UTC (permalink / raw)
  To: qemu-devel
  Cc: peter.maydell, Thomas Huth, Michael S . Tsirkin, Cornelia Huck,
	Dr . David Alan Gilbert, Alexander Bulekov, Stefan Hajnoczi,
	Paolo Bonzini

Clean up includes so that osdep.h is included first and headers
which it implies are not included manually.

This commit was created with scripts/clean-includes, with the changes
to the following files manually reverted:

    contrib/libvhost-user/libvhost-user-glib.h
    contrib/libvhost-user/libvhost-user.c
    contrib/libvhost-user/libvhost-user.h
    contrib/plugins/hotblocks.c
    contrib/plugins/hotpages.c
    contrib/plugins/howvec.c
    contrib/plugins/lockstep.c
    linux-user/mips64/cpu_loop.c
    linux-user/mips64/signal.c
    linux-user/sparc64/cpu_loop.c
    linux-user/sparc64/signal.c
    linux-user/x86_64/cpu_loop.c
    linux-user/x86_64/signal.c
    target/s390x/gen-features.c
    tests/fp/platform.h
    tests/migration/s390x/a-b-bios.c
    tests/plugin/bb.c
    tests/plugin/empty.c
    tests/plugin/insn.c
    tests/plugin/mem.c
    tests/test-rcu-simpleq.c
    tests/test-rcu-slist.c
    tests/test-rcu-tailq.c
    tests/uefi-test-tools/UefiTestToolsPkg/BiosTablesTest/BiosTablesTest.c

contrib/plugins/, tests/plugin/, and tests/test-rcu-slist.c appear not
to include osdep.h intentionally.  The remaining reverts are the same
as in commit bbfff19688d.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20201113061216.2483385-1-armbru@redhat.com>
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Acked-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Acked-by: Cornelia Huck <cohuck@redhat.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Acked-by: Alexander Bulekov <alxndr@bu.edu>
---
 contrib/vhost-user-gpu/vugbm.h          |  2 --
 contrib/vhost-user-gpu/vugpu.h          |  1 -
 include/hw/block/swim.h                 |  1 -
 include/hw/display/macfb.h              |  1 -
 include/qemu/nvdimm-utils.h             |  1 -
 tests/qtest/fuzz/fuzz.h                 |  1 -
 tests/qtest/fuzz/generic_fuzz_configs.h |  1 -
 tools/virtiofsd/fuse_common.h           |  2 --
 tools/virtiofsd/fuse_log.h              |  1 -
 tools/virtiofsd/fuse_lowlevel.h         |  3 ---
 tools/virtiofsd/fuse_misc.h             |  1 -
 tools/virtiofsd/passthrough_seccomp.h   |  1 -
 contrib/vhost-user-gpu/virgl.c          |  1 +
 contrib/vhost-user-gpu/vugbm.c          |  1 +
 contrib/vhost-user-input/main.c         |  1 -
 hw/display/artist.c                     |  1 -
 hw/s390x/s390-pci-vfio.c                |  3 ++-
 tools/virtiofsd/buffer.c                |  5 -----
 tools/virtiofsd/fuse_log.c              |  2 --
 tools/virtiofsd/fuse_lowlevel.c         | 10 ----------
 tools/virtiofsd/fuse_opt.c              |  4 ----
 tools/virtiofsd/fuse_signals.c          |  5 -----
 tools/virtiofsd/fuse_virtio.c           | 10 ----------
 tools/virtiofsd/helper.c                |  8 --------
 tools/virtiofsd/passthrough_ll.c        | 12 ------------
 tools/virtiofsd/passthrough_seccomp.c   |  3 ---
 util/nvdimm-utils.c                     |  1 +
 27 files changed, 5 insertions(+), 78 deletions(-)

diff --git a/contrib/vhost-user-gpu/vugbm.h b/contrib/vhost-user-gpu/vugbm.h
index 07e698fcd7..66f1520764 100644
--- a/contrib/vhost-user-gpu/vugbm.h
+++ b/contrib/vhost-user-gpu/vugbm.h
@@ -10,10 +10,8 @@
 #ifndef VHOST_USER_GPU_VUGBM_H
 #define VHOST_USER_GPU_VUGBM_H
 
-#include "qemu/osdep.h"
 
 #ifdef CONFIG_MEMFD
-#include <sys/mman.h>
 #include <sys/ioctl.h>
 #endif
 
diff --git a/contrib/vhost-user-gpu/vugpu.h b/contrib/vhost-user-gpu/vugpu.h
index bdf9a74b46..ad664c4df8 100644
--- a/contrib/vhost-user-gpu/vugpu.h
+++ b/contrib/vhost-user-gpu/vugpu.h
@@ -15,7 +15,6 @@
 #ifndef VUGPU_H
 #define VUGPU_H
 
-#include "qemu/osdep.h"
 
 #include "libvhost-user-glib.h"
 #include "standard-headers/linux/virtio_gpu.h"
diff --git a/include/hw/block/swim.h b/include/hw/block/swim.h
index 5a49029543..c1bd5f6555 100644
--- a/include/hw/block/swim.h
+++ b/include/hw/block/swim.h
@@ -11,7 +11,6 @@
 #ifndef SWIM_H
 #define SWIM_H
 
-#include "qemu/osdep.h"
 #include "hw/sysbus.h"
 #include "qom/object.h"
 
diff --git a/include/hw/display/macfb.h b/include/hw/display/macfb.h
index c133fa271e..80806b0306 100644
--- a/include/hw/display/macfb.h
+++ b/include/hw/display/macfb.h
@@ -13,7 +13,6 @@
 #ifndef MACFB_H
 #define MACFB_H
 
-#include "qemu/osdep.h"
 #include "exec/memory.h"
 #include "ui/console.h"
 #include "qom/object.h"
diff --git a/include/qemu/nvdimm-utils.h b/include/qemu/nvdimm-utils.h
index 4b8b198ba7..5f45774c2c 100644
--- a/include/qemu/nvdimm-utils.h
+++ b/include/qemu/nvdimm-utils.h
@@ -1,7 +1,6 @@
 #ifndef NVDIMM_UTILS_H
 #define NVDIMM_UTILS_H
 
-#include "qemu/osdep.h"
 
 GSList *nvdimm_get_device_list(void);
 #endif
diff --git a/tests/qtest/fuzz/fuzz.h b/tests/qtest/fuzz/fuzz.h
index 08e9560a79..3a8570e84c 100644
--- a/tests/qtest/fuzz/fuzz.h
+++ b/tests/qtest/fuzz/fuzz.h
@@ -14,7 +14,6 @@
 #ifndef FUZZER_H_
 #define FUZZER_H_
 
-#include "qemu/osdep.h"
 #include "qemu/units.h"
 #include "qapi/error.h"
 
diff --git a/tests/qtest/fuzz/generic_fuzz_configs.h b/tests/qtest/fuzz/generic_fuzz_configs.h
index c4d925f9e6..b4c5fefeca 100644
--- a/tests/qtest/fuzz/generic_fuzz_configs.h
+++ b/tests/qtest/fuzz/generic_fuzz_configs.h
@@ -13,7 +13,6 @@
 #ifndef GENERIC_FUZZ_CONFIGS_H
 #define GENERIC_FUZZ_CONFIGS_H
 
-#include "qemu/osdep.h"
 
 typedef struct generic_fuzz_config {
     const char *name, *args, *objects;
diff --git a/tools/virtiofsd/fuse_common.h b/tools/virtiofsd/fuse_common.h
index 5aee5193eb..30b18b4966 100644
--- a/tools/virtiofsd/fuse_common.h
+++ b/tools/virtiofsd/fuse_common.h
@@ -18,8 +18,6 @@
 
 #include "fuse_log.h"
 #include "fuse_opt.h"
-#include <stdint.h>
-#include <sys/types.h>
 
 /** Major version of FUSE library interface */
 #define FUSE_MAJOR_VERSION 3
diff --git a/tools/virtiofsd/fuse_log.h b/tools/virtiofsd/fuse_log.h
index bf6c11ff11..8d7091bd4d 100644
--- a/tools/virtiofsd/fuse_log.h
+++ b/tools/virtiofsd/fuse_log.h
@@ -14,7 +14,6 @@
  * This file defines the logging interface of FUSE
  */
 
-#include <stdarg.h>
 
 /**
  * Log severity level
diff --git a/tools/virtiofsd/fuse_lowlevel.h b/tools/virtiofsd/fuse_lowlevel.h
index 9c06240f9e..0e10a14bc9 100644
--- a/tools/virtiofsd/fuse_lowlevel.h
+++ b/tools/virtiofsd/fuse_lowlevel.h
@@ -25,10 +25,7 @@
 
 #include "fuse_common.h"
 
-#include <fcntl.h>
-#include <sys/stat.h>
 #include <sys/statvfs.h>
-#include <sys/types.h>
 #include <sys/uio.h>
 #include <utime.h>
 
diff --git a/tools/virtiofsd/fuse_misc.h b/tools/virtiofsd/fuse_misc.h
index 5c618ce21f..f252baa752 100644
--- a/tools/virtiofsd/fuse_misc.h
+++ b/tools/virtiofsd/fuse_misc.h
@@ -7,7 +7,6 @@
  */
 
 #include <pthread.h>
-#include "config-host.h"
 
 /*
  * Versioned symbols cannot be used in some cases because it
diff --git a/tools/virtiofsd/passthrough_seccomp.h b/tools/virtiofsd/passthrough_seccomp.h
index d47c8eade6..a3ab073f08 100644
--- a/tools/virtiofsd/passthrough_seccomp.h
+++ b/tools/virtiofsd/passthrough_seccomp.h
@@ -9,7 +9,6 @@
 #ifndef VIRTIOFSD_SECCOMP_H
 #define VIRTIOFSD_SECCOMP_H
 
-#include <stdbool.h>
 
 void setup_seccomp(bool enable_syslog);
 
diff --git a/contrib/vhost-user-gpu/virgl.c b/contrib/vhost-user-gpu/virgl.c
index b0bc22c3c1..e647278052 100644
--- a/contrib/vhost-user-gpu/virgl.c
+++ b/contrib/vhost-user-gpu/virgl.c
@@ -12,6 +12,7 @@
  * See the COPYING file in the top-level directory.
  */
 
+#include "qemu/osdep.h"
 #include <virglrenderer.h>
 #include "virgl.h"
 
diff --git a/contrib/vhost-user-gpu/vugbm.c b/contrib/vhost-user-gpu/vugbm.c
index 9c357b6399..f5304ada2f 100644
--- a/contrib/vhost-user-gpu/vugbm.c
+++ b/contrib/vhost-user-gpu/vugbm.c
@@ -7,6 +7,7 @@
  * See the COPYING file in the top-level directory.
  */
 
+#include "qemu/osdep.h"
 #include "vugbm.h"
 
 static bool
diff --git a/contrib/vhost-user-input/main.c b/contrib/vhost-user-input/main.c
index d2de47cee7..c15d18c33f 100644
--- a/contrib/vhost-user-input/main.c
+++ b/contrib/vhost-user-input/main.c
@@ -6,7 +6,6 @@
 
 #include "qemu/osdep.h"
 
-#include <glib.h>
 #include <linux/input.h>
 
 #include "qemu/iov.h"
diff --git a/hw/display/artist.c b/hw/display/artist.c
index ed0e637f25..aa7bd594aa 100644
--- a/hw/display/artist.c
+++ b/hw/display/artist.c
@@ -9,7 +9,6 @@
 #include "qemu/osdep.h"
 #include "qemu-common.h"
 #include "qemu/error-report.h"
-#include "qemu/typedefs.h"
 #include "qemu/log.h"
 #include "qemu/module.h"
 #include "qemu/units.h"
diff --git a/hw/s390x/s390-pci-vfio.c b/hw/s390x/s390-pci-vfio.c
index 9296e1bb6e..ead4f222d5 100644
--- a/hw/s390x/s390-pci-vfio.c
+++ b/hw/s390x/s390-pci-vfio.c
@@ -9,11 +9,12 @@
  * directory.
  */
 
+#include "qemu/osdep.h"
+
 #include <sys/ioctl.h>
 #include <linux/vfio.h>
 #include <linux/vfio_zdev.h>
 
-#include "qemu/osdep.h"
 #include "trace.h"
 #include "hw/s390x/s390-pci-bus.h"
 #include "hw/s390x/s390-pci-clp.h"
diff --git a/tools/virtiofsd/buffer.c b/tools/virtiofsd/buffer.c
index bdc608c221..874f01c488 100644
--- a/tools/virtiofsd/buffer.c
+++ b/tools/virtiofsd/buffer.c
@@ -12,11 +12,6 @@
 #include "qemu/osdep.h"
 #include "fuse_i.h"
 #include "fuse_lowlevel.h"
-#include <assert.h>
-#include <errno.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
 
 size_t fuse_buf_size(const struct fuse_bufvec *bufv)
 {
diff --git a/tools/virtiofsd/fuse_log.c b/tools/virtiofsd/fuse_log.c
index c301ff6da1..745d88cd2a 100644
--- a/tools/virtiofsd/fuse_log.c
+++ b/tools/virtiofsd/fuse_log.c
@@ -11,8 +11,6 @@
 #include "qemu/osdep.h"
 #include "fuse_log.h"
 
-#include <stdarg.h>
-#include <stdio.h>
 
 static void default_log_func(__attribute__((unused)) enum fuse_log_level level,
                              const char *fmt, va_list ap)
diff --git a/tools/virtiofsd/fuse_lowlevel.c b/tools/virtiofsd/fuse_lowlevel.c
index c70fb16a9a..d4119e92ab 100644
--- a/tools/virtiofsd/fuse_lowlevel.c
+++ b/tools/virtiofsd/fuse_lowlevel.c
@@ -16,17 +16,7 @@
 #include "fuse_opt.h"
 #include "fuse_virtio.h"
 
-#include <assert.h>
-#include <errno.h>
-#include <glib.h>
-#include <limits.h>
-#include <stdbool.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
 #include <sys/file.h>
-#include <unistd.h>
 
 #define THREAD_POOL_SIZE 64
 
diff --git a/tools/virtiofsd/fuse_opt.c b/tools/virtiofsd/fuse_opt.c
index 28922361a2..f0ab8d22f4 100644
--- a/tools/virtiofsd/fuse_opt.c
+++ b/tools/virtiofsd/fuse_opt.c
@@ -14,10 +14,6 @@
 #include "fuse_i.h"
 #include "fuse_misc.h"
 
-#include <assert.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
 
 struct fuse_opt_context {
     void *data;
diff --git a/tools/virtiofsd/fuse_signals.c b/tools/virtiofsd/fuse_signals.c
index f18625b6e2..1de46de1ce 100644
--- a/tools/virtiofsd/fuse_signals.c
+++ b/tools/virtiofsd/fuse_signals.c
@@ -12,11 +12,6 @@
 #include "fuse_i.h"
 #include "fuse_lowlevel.h"
 
-#include <errno.h>
-#include <signal.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
 
 static struct fuse_session *fuse_instance;
 
diff --git a/tools/virtiofsd/fuse_virtio.c b/tools/virtiofsd/fuse_virtio.c
index 623812c432..b264dcbd18 100644
--- a/tools/virtiofsd/fuse_virtio.c
+++ b/tools/virtiofsd/fuse_virtio.c
@@ -20,20 +20,10 @@
 #include "fuse_opt.h"
 #include "fuse_virtio.h"
 
-#include <assert.h>
-#include <errno.h>
-#include <glib.h>
-#include <stdint.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
 #include <sys/eventfd.h>
 #include <sys/socket.h>
-#include <sys/types.h>
 #include <sys/un.h>
-#include <sys/types.h>
 #include <grp.h>
-#include <unistd.h>
 
 #include "libvhost-user.h"
 
diff --git a/tools/virtiofsd/helper.c b/tools/virtiofsd/helper.c
index 75ac48dec2..28243b51b2 100644
--- a/tools/virtiofsd/helper.c
+++ b/tools/virtiofsd/helper.c
@@ -16,16 +16,8 @@
 #include "fuse_misc.h"
 #include "fuse_opt.h"
 
-#include <errno.h>
-#include <limits.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
 #include <sys/param.h>
-#include <sys/time.h>
 #include <sys/resource.h>
-#include <unistd.h>
 
 #define FUSE_HELPER_OPT(t, p)                       \
     {                                               \
diff --git a/tools/virtiofsd/passthrough_ll.c b/tools/virtiofsd/passthrough_ll.c
index 97485b22b4..12de321745 100644
--- a/tools/virtiofsd/passthrough_ll.c
+++ b/tools/virtiofsd/passthrough_ll.c
@@ -41,29 +41,17 @@
 #include "fuse_log.h"
 #include "fuse_lowlevel.h"
 #include "standard-headers/linux/fuse.h"
-#include <assert.h>
 #include <cap-ng.h>
 #include <dirent.h>
-#include <errno.h>
-#include <glib.h>
-#include <inttypes.h>
-#include <limits.h>
 #include <pthread.h>
-#include <stdbool.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
 #include <sys/file.h>
 #include <sys/mount.h>
 #include <sys/prctl.h>
 #include <sys/resource.h>
 #include <sys/syscall.h>
-#include <sys/types.h>
 #include <sys/wait.h>
 #include <sys/xattr.h>
 #include <syslog.h>
-#include <unistd.h>
 
 #include "qemu/cutils.h"
 #include "passthrough_helpers.h"
diff --git a/tools/virtiofsd/passthrough_seccomp.c b/tools/virtiofsd/passthrough_seccomp.c
index 11623f56f2..a60d7da4b4 100644
--- a/tools/virtiofsd/passthrough_seccomp.c
+++ b/tools/virtiofsd/passthrough_seccomp.c
@@ -10,10 +10,7 @@
 #include "passthrough_seccomp.h"
 #include "fuse_i.h"
 #include "fuse_log.h"
-#include <errno.h>
-#include <glib.h>
 #include <seccomp.h>
-#include <stdlib.h>
 
 /* Bodge for libseccomp 2.4.2 which broke ppoll */
 #if !defined(__SNR_ppoll) && defined(__SNR_brk)
diff --git a/util/nvdimm-utils.c b/util/nvdimm-utils.c
index 5cc768ca47..aa3d199f2d 100644
--- a/util/nvdimm-utils.c
+++ b/util/nvdimm-utils.c
@@ -1,3 +1,4 @@
+#include "qemu/osdep.h"
 #include "qemu/nvdimm-utils.h"
 #include "hw/mem/nvdimm.h"
 
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PULL 02/13] qerror: Drop unused QERR_ macros
  2020-12-10 16:31 [PULL 00/13] Miscellaneous patches for 2020-12-10 Markus Armbruster
  2020-12-10 16:31 ` [PULL 01/13] Clean up includes Markus Armbruster
@ 2020-12-10 16:31 ` Markus Armbruster
  2020-12-10 16:31 ` [PULL 03/13] qerror: Eliminate QERR_ macros used in just one place Markus Armbruster
                   ` (11 subsequent siblings)
  13 siblings, 0 replies; 16+ messages in thread
From: Markus Armbruster @ 2020-12-10 16:31 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell, Philippe Mathieu-Daudé

QERR_INVALID_BLOCK_FORMAT is dead since commit e6641719fe "block:
Always pass NULL as drv for bdrv_open()", 2015-09-14.

QERR_INVALID_PASSWORD is dead since commit c01c214b69 "block: remove
all encryption handling APIs", 2017-07-11.

Bury them.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20201113082626.2725812-2-armbru@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
 include/qapi/qmp/qerror.h | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/include/qapi/qmp/qerror.h b/include/qapi/qmp/qerror.h
index 7c76e24aa7..3eabd451d8 100644
--- a/include/qapi/qmp/qerror.h
+++ b/include/qapi/qmp/qerror.h
@@ -43,9 +43,6 @@
 #define QERR_FEATURE_DISABLED \
     "The feature '%s' is not enabled"
 
-#define QERR_INVALID_BLOCK_FORMAT \
-    "Invalid block format '%s'"
-
 #define QERR_INVALID_PARAMETER \
     "Invalid parameter '%s'"
 
@@ -55,9 +52,6 @@
 #define QERR_INVALID_PARAMETER_VALUE \
     "Parameter '%s' expects %s"
 
-#define QERR_INVALID_PASSWORD \
-    "Password incorrect"
-
 #define QERR_IO_ERROR \
     "An IO error has occurred"
 
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PULL 03/13] qerror: Eliminate QERR_ macros used in just one place
  2020-12-10 16:31 [PULL 00/13] Miscellaneous patches for 2020-12-10 Markus Armbruster
  2020-12-10 16:31 ` [PULL 01/13] Clean up includes Markus Armbruster
  2020-12-10 16:31 ` [PULL 02/13] qerror: Drop unused QERR_ macros Markus Armbruster
@ 2020-12-10 16:31 ` Markus Armbruster
  2020-12-10 16:31 ` [PULL 04/13] block: Improve some block-commit, block-stream error messages Markus Armbruster
                   ` (10 subsequent siblings)
  13 siblings, 0 replies; 16+ messages in thread
From: Markus Armbruster @ 2020-12-10 16:31 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20201113082626.2725812-3-armbru@redhat.com>
---
 include/qapi/qmp/qerror.h | 9 ---------
 monitor/misc.c            | 8 ++++----
 net/net.c                 | 2 +-
 3 files changed, 5 insertions(+), 14 deletions(-)

diff --git a/include/qapi/qmp/qerror.h b/include/qapi/qmp/qerror.h
index 3eabd451d8..c272e3fc29 100644
--- a/include/qapi/qmp/qerror.h
+++ b/include/qapi/qmp/qerror.h
@@ -25,21 +25,12 @@
 #define QERR_DEVICE_HAS_NO_MEDIUM \
     "Device '%s' has no medium"
 
-#define QERR_DEVICE_INIT_FAILED \
-    "Device '%s' could not be initialized"
-
 #define QERR_DEVICE_IN_USE \
     "Device '%s' is in use"
 
 #define QERR_DEVICE_NO_HOTPLUG \
     "Device '%s' does not support hotplugging"
 
-#define QERR_FD_NOT_FOUND \
-    "File descriptor named '%s' not found"
-
-#define QERR_FD_NOT_SUPPLIED \
-    "No file descriptor supplied via SCM_RIGHTS"
-
 #define QERR_FEATURE_DISABLED \
     "The feature '%s' is not enabled"
 
diff --git a/monitor/misc.c b/monitor/misc.c
index 398211a034..c563e901c0 100644
--- a/monitor/misc.c
+++ b/monitor/misc.c
@@ -1232,7 +1232,7 @@ void qmp_getfd(const char *fdname, Error **errp)
 
     fd = qemu_chr_fe_get_msgfd(&cur_mon->chr);
     if (fd == -1) {
-        error_setg(errp, QERR_FD_NOT_SUPPLIED);
+        error_setg(errp, "No file descriptor supplied via SCM_RIGHTS");
         return;
     }
 
@@ -1286,7 +1286,7 @@ void qmp_closefd(const char *fdname, Error **errp)
     }
 
     qemu_mutex_unlock(&cur_mon->mon_lock);
-    error_setg(errp, QERR_FD_NOT_FOUND, fdname);
+    error_setg(errp, "File descriptor named '%s' not found", fdname);
 }
 
 int monitor_get_fd(Monitor *mon, const char *fdname, Error **errp)
@@ -1357,7 +1357,7 @@ AddfdInfo *qmp_add_fd(bool has_fdset_id, int64_t fdset_id, bool has_opaque,
 
     fd = qemu_chr_fe_get_msgfd(&mon->chr);
     if (fd == -1) {
-        error_setg(errp, QERR_FD_NOT_SUPPLIED);
+        error_setg(errp, "No file descriptor supplied via SCM_RIGHTS");
         goto error;
     }
 
@@ -1410,7 +1410,7 @@ error:
     } else {
         snprintf(fd_str, sizeof(fd_str), "fdset-id:%" PRId64, fdset_id);
     }
-    error_setg(errp, QERR_FD_NOT_FOUND, fd_str);
+    error_setg(errp, "File descriptor named '%s' not found", fd_str);
 }
 
 FdsetInfoList *qmp_query_fdsets(Error **errp)
diff --git a/net/net.c b/net/net.c
index 6a2c3d9567..e1035f21d1 100644
--- a/net/net.c
+++ b/net/net.c
@@ -1013,7 +1013,7 @@ static int net_client_init1(const Netdev *netdev, bool is_netdev, Error **errp)
     if (net_client_init_fun[netdev->type](netdev, netdev->id, peer, errp) < 0) {
         /* FIXME drop when all init functions store an Error */
         if (errp && !*errp) {
-            error_setg(errp, QERR_DEVICE_INIT_FAILED,
+            error_setg(errp, "Device '%s' could not be initialized",
                        NetClientDriver_str(netdev->type));
         }
         return -1;
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PULL 04/13] block: Improve some block-commit, block-stream error messages
  2020-12-10 16:31 [PULL 00/13] Miscellaneous patches for 2020-12-10 Markus Armbruster
                   ` (2 preceding siblings ...)
  2020-12-10 16:31 ` [PULL 03/13] qerror: Eliminate QERR_ macros used in just one place Markus Armbruster
@ 2020-12-10 16:31 ` Markus Armbruster
  2020-12-10 16:31 ` [PULL 05/13] ui: Improve some set_passwd, expire_password " Markus Armbruster
                   ` (9 subsequent siblings)
  13 siblings, 0 replies; 16+ messages in thread
From: Markus Armbruster @ 2020-12-10 16:31 UTC (permalink / raw)
  To: qemu-devel; +Cc: Kevin Wolf, peter.maydell, qemu-block, Max Reitz

block-commit defaults @base-node to the deepest backing image.  When
there is none, it fails with "Base 'NULL' not found".  Improve to
"There is no backing image".

block-commit and block-stream reject a @base argument that doesn't
resolve with "Base 'BASE' not found".  Commit 6b33f3ae8b "qemu-img:
Improve commit invalid base message" improved this message in
qemu-img.  Improve it here, too: "Can't find '%s' in the backing
chain".

QERR_BASE_NOT_FOUND is now unused.  Drop.

Cc: Kevin Wolf <kwolf@redhat.com>
Cc: Max Reitz <mreitz@redhat.com>
Cc: qemu-block@nongnu.org
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20201113082626.2725812-4-armbru@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
---
 include/qapi/qmp/qerror.h |  2 --
 blockdev.c                | 15 +++++++++------
 tests/qemu-iotests/040    | 12 ++++++------
 3 files changed, 15 insertions(+), 14 deletions(-)

diff --git a/include/qapi/qmp/qerror.h b/include/qapi/qmp/qerror.h
index c272e3fc29..5d7e69cc1f 100644
--- a/include/qapi/qmp/qerror.h
+++ b/include/qapi/qmp/qerror.h
@@ -16,8 +16,6 @@
  * These macros will go away, please don't use in new code, and do not
  * add new ones!
  */
-#define QERR_BASE_NOT_FOUND \
-    "Base '%s' not found"
 
 #define QERR_BUS_NO_HOTPLUG \
     "Bus '%s' does not support hotplugging"
diff --git a/blockdev.c b/blockdev.c
index fe6fb5dc1d..d05a8740f4 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -2531,7 +2531,7 @@ void qmp_block_stream(bool has_job_id, const char *job_id, const char *device,
     if (has_base) {
         base_bs = bdrv_find_backing_image(bs, base);
         if (base_bs == NULL) {
-            error_setg(errp, QERR_BASE_NOT_FOUND, base);
+            error_setg(errp, "Can't find '%s' in the backing chain", base);
             goto out;
         }
         assert(bdrv_get_aio_context(base_bs) == aio_context);
@@ -2703,13 +2703,16 @@ void qmp_block_commit(bool has_job_id, const char *job_id, const char *device,
         }
     } else if (has_base && base) {
         base_bs = bdrv_find_backing_image(top_bs, base);
+        if (base_bs == NULL) {
+            error_setg(errp, "Can't find '%s' in the backing chain", base);
+            goto out;
+        }
     } else {
         base_bs = bdrv_find_base(top_bs);
-    }
-
-    if (base_bs == NULL) {
-        error_setg(errp, QERR_BASE_NOT_FOUND, base ? base : "NULL");
-        goto out;
+        if (base_bs == NULL) {
+            error_setg(errp, "There is no backimg image");
+            goto out;
+        }
     }
 
     assert(bdrv_get_aio_context(base_bs) == aio_context);
diff --git a/tests/qemu-iotests/040 b/tests/qemu-iotests/040
index caf286571a..dc6069edc0 100755
--- a/tests/qemu-iotests/040
+++ b/tests/qemu-iotests/040
@@ -156,7 +156,7 @@ class TestSingleDrive(ImageCommitTestCase):
         self.assert_no_active_block_jobs()
         result = self.vm.qmp('block-commit', device='drive0', top='%s' % backing_img, base='%s' % backing_img)
         self.assert_qmp(result, 'error/class', 'GenericError')
-        self.assert_qmp(result, 'error/desc', 'Base \'%s\' not found' % backing_img)
+        self.assert_qmp(result, 'error/desc', "Can't find '%s' in the backing chain" % backing_img)
 
     def test_top_invalid(self):
         self.assert_no_active_block_jobs()
@@ -168,7 +168,7 @@ class TestSingleDrive(ImageCommitTestCase):
         self.assert_no_active_block_jobs()
         result = self.vm.qmp('block-commit', device='drive0', top='%s' % mid_img, base='badfile')
         self.assert_qmp(result, 'error/class', 'GenericError')
-        self.assert_qmp(result, 'error/desc', 'Base \'badfile\' not found')
+        self.assert_qmp(result, 'error/desc', "Can't find 'badfile' in the backing chain")
 
     def test_top_node_invalid(self):
         self.assert_no_active_block_jobs()
@@ -208,7 +208,7 @@ class TestSingleDrive(ImageCommitTestCase):
         self.assert_no_active_block_jobs()
         result = self.vm.qmp('block-commit', device='drive0', top='%s' % backing_img, base='%s' % mid_img)
         self.assert_qmp(result, 'error/class', 'GenericError')
-        self.assert_qmp(result, 'error/desc', 'Base \'%s\' not found' % mid_img)
+        self.assert_qmp(result, 'error/desc', "Can't find '%s' in the backing chain" % mid_img)
 
     def test_top_and_base_node_reversed(self):
         self.assert_no_active_block_jobs()
@@ -349,7 +349,7 @@ class TestRelativePaths(ImageCommitTestCase):
         self.assert_no_active_block_jobs()
         result = self.vm.qmp('block-commit', device='drive0', top='%s' % self.mid_img, base='%s' % self.mid_img)
         self.assert_qmp(result, 'error/class', 'GenericError')
-        self.assert_qmp(result, 'error/desc', 'Base \'%s\' not found' % self.mid_img)
+        self.assert_qmp(result, 'error/desc', "Can't find '%s' in the backing chain" % self.mid_img)
 
     def test_top_invalid(self):
         self.assert_no_active_block_jobs()
@@ -361,7 +361,7 @@ class TestRelativePaths(ImageCommitTestCase):
         self.assert_no_active_block_jobs()
         result = self.vm.qmp('block-commit', device='drive0', top='%s' % self.mid_img, base='badfile')
         self.assert_qmp(result, 'error/class', 'GenericError')
-        self.assert_qmp(result, 'error/desc', 'Base \'badfile\' not found')
+        self.assert_qmp(result, 'error/desc', "Can't find 'badfile' in the backing chain")
 
     def test_top_is_active(self):
         self.run_commit_test(self.test_img, self.backing_img)
@@ -372,7 +372,7 @@ class TestRelativePaths(ImageCommitTestCase):
         self.assert_no_active_block_jobs()
         result = self.vm.qmp('block-commit', device='drive0', top='%s' % self.backing_img, base='%s' % self.mid_img)
         self.assert_qmp(result, 'error/class', 'GenericError')
-        self.assert_qmp(result, 'error/desc', 'Base \'%s\' not found' % self.mid_img)
+        self.assert_qmp(result, 'error/desc', "Can't find '%s' in the backing chain" % self.mid_img)
 
 
 class TestSetSpeed(ImageCommitTestCase):
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PULL 05/13] ui: Improve some set_passwd, expire_password error messages
  2020-12-10 16:31 [PULL 00/13] Miscellaneous patches for 2020-12-10 Markus Armbruster
                   ` (3 preceding siblings ...)
  2020-12-10 16:31 ` [PULL 04/13] block: Improve some block-commit, block-stream error messages Markus Armbruster
@ 2020-12-10 16:31 ` Markus Armbruster
  2020-12-10 16:31 ` [PULL 06/13] ui: Improve a client_migrate_info error message Markus Armbruster
                   ` (8 subsequent siblings)
  13 siblings, 0 replies; 16+ messages in thread
From: Markus Armbruster @ 2020-12-10 16:31 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell, Gerd Hoffmann

set_passwd and expire_password reject invalid "protocol" with "Invalid
parameter 'protocol'".  Misleading; the parameter is valid, its value
isn't.  Improve to "Parameter 'protocol' expects 'vnc' or 'spice'".

expire_password fails with "Could not set password".  Misleading;
improve to "Could not set password expire time".

QERR_SET_PASSWD_FAILED is now unused.  Drop.

Cc: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20201113082626.2725812-5-armbru@redhat.com>
---
 include/qapi/qmp/qerror.h |  3 ---
 monitor/qmp-cmds.c        | 38 +++++++++++++++-----------------------
 2 files changed, 15 insertions(+), 26 deletions(-)

diff --git a/include/qapi/qmp/qerror.h b/include/qapi/qmp/qerror.h
index 5d7e69cc1f..d8267129bc 100644
--- a/include/qapi/qmp/qerror.h
+++ b/include/qapi/qmp/qerror.h
@@ -65,9 +65,6 @@
 #define QERR_REPLAY_NOT_SUPPORTED \
     "Record/replay feature is not supported for '%s'"
 
-#define QERR_SET_PASSWD_FAILED \
-    "Could not set password"
-
 #define QERR_UNDEFINED_ERROR \
     "An undefined error has occurred"
 
diff --git a/monitor/qmp-cmds.c b/monitor/qmp-cmds.c
index a08143b323..ffbf948d55 100644
--- a/monitor/qmp-cmds.c
+++ b/monitor/qmp-cmds.c
@@ -199,13 +199,7 @@ void qmp_set_password(const char *protocol, const char *password,
         }
         rc = qemu_spice.set_passwd(password, fail_if_connected,
                                    disconnect_if_connected);
-        if (rc != 0) {
-            error_setg(errp, QERR_SET_PASSWD_FAILED);
-        }
-        return;
-    }
-
-    if (strcmp(protocol, "vnc") == 0) {
+    } else if (strcmp(protocol, "vnc") == 0) {
         if (fail_if_connected || disconnect_if_connected) {
             /* vnc supports "connected=keep" only */
             error_setg(errp, QERR_INVALID_PARAMETER, "connected");
@@ -214,13 +208,15 @@ void qmp_set_password(const char *protocol, const char *password,
         /* Note that setting an empty password will not disable login through
          * this interface. */
         rc = vnc_display_password(NULL, password);
-        if (rc < 0) {
-            error_setg(errp, QERR_SET_PASSWD_FAILED);
-        }
+    } else {
+        error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "protocol",
+                   "'vnc' or 'spice'");
         return;
     }
 
-    error_setg(errp, QERR_INVALID_PARAMETER, "protocol");
+    if (rc != 0) {
+        error_setg(errp, "Could not set password");
+    }
 }
 
 void qmp_expire_password(const char *protocol, const char *whenstr,
@@ -244,28 +240,24 @@ void qmp_expire_password(const char *protocol, const char *whenstr,
             return;
         }
         rc = qemu_spice.set_pw_expire(when);
-        if (rc != 0) {
-            error_setg(errp, QERR_SET_PASSWD_FAILED);
-        }
-        return;
-    }
-
-    if (strcmp(protocol, "vnc") == 0) {
+    } else if (strcmp(protocol, "vnc") == 0) {
         rc = vnc_display_pw_expire(NULL, when);
-        if (rc != 0) {
-            error_setg(errp, QERR_SET_PASSWD_FAILED);
-        }
+    } else {
+        error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "protocol",
+                   "'vnc' or 'spice'");
         return;
     }
 
-    error_setg(errp, QERR_INVALID_PARAMETER, "protocol");
+    if (rc != 0) {
+        error_setg(errp, "Could not set password expire time");
+    }
 }
 
 #ifdef CONFIG_VNC
 void qmp_change_vnc_password(const char *password, Error **errp)
 {
     if (vnc_display_password(NULL, password) < 0) {
-        error_setg(errp, QERR_SET_PASSWD_FAILED);
+        error_setg(errp, "Could not set password");
     }
 }
 
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PULL 06/13] ui: Improve a client_migrate_info error message
  2020-12-10 16:31 [PULL 00/13] Miscellaneous patches for 2020-12-10 Markus Armbruster
                   ` (4 preceding siblings ...)
  2020-12-10 16:31 ` [PULL 05/13] ui: Improve some set_passwd, expire_password " Markus Armbruster
@ 2020-12-10 16:31 ` Markus Armbruster
  2020-12-10 16:31 ` [PULL 07/13] ui: Tweak " Markus Armbruster
                   ` (7 subsequent siblings)
  13 siblings, 0 replies; 16+ messages in thread
From: Markus Armbruster @ 2020-12-10 16:31 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell, Gerd Hoffmann

client_migrate_info reports spice_server_migrate_connect() failure as
"An undefined error has occurred".  Improve to "Could not set up
display for migration".

QERR_UNDEFINED_ERROR is now unused.  Drop.

Cc: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20201113082626.2725812-6-armbru@redhat.com>
---
 include/qapi/qmp/qerror.h | 3 ---
 monitor/misc.c            | 2 +-
 2 files changed, 1 insertion(+), 4 deletions(-)

diff --git a/include/qapi/qmp/qerror.h b/include/qapi/qmp/qerror.h
index d8267129bc..596fce0c54 100644
--- a/include/qapi/qmp/qerror.h
+++ b/include/qapi/qmp/qerror.h
@@ -65,9 +65,6 @@
 #define QERR_REPLAY_NOT_SUPPORTED \
     "Record/replay feature is not supported for '%s'"
 
-#define QERR_UNDEFINED_ERROR \
-    "An undefined error has occurred"
-
 #define QERR_UNSUPPORTED \
     "this feature or command is not currently supported"
 
diff --git a/monitor/misc.c b/monitor/misc.c
index c563e901c0..bb102df823 100644
--- a/monitor/misc.c
+++ b/monitor/misc.c
@@ -441,7 +441,7 @@ void qmp_client_migrate_info(const char *protocol, const char *hostname,
                                     has_port ? port : -1,
                                     has_tls_port ? tls_port : -1,
                                     cert_subject)) {
-            error_setg(errp, QERR_UNDEFINED_ERROR);
+            error_setg(errp, "Could not set up display for migration");
             return;
         }
         return;
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PULL 07/13] ui: Tweak a client_migrate_info error message
  2020-12-10 16:31 [PULL 00/13] Miscellaneous patches for 2020-12-10 Markus Armbruster
                   ` (5 preceding siblings ...)
  2020-12-10 16:31 ` [PULL 06/13] ui: Improve a client_migrate_info error message Markus Armbruster
@ 2020-12-10 16:31 ` Markus Armbruster
  2020-12-10 16:31 ` [PULL 08/13] qga: Replace an unreachable error by abort() Markus Armbruster
                   ` (6 subsequent siblings)
  13 siblings, 0 replies; 16+ messages in thread
From: Markus Armbruster @ 2020-12-10 16:31 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell, Gerd Hoffmann

Change

    Parameter 'protocol' expects spice

to

    Parameter 'protocol' expects 'spice'

for consistency with similar error messages elsewhere.

Cc: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20201113082626.2725812-7-armbru@redhat.com>
---
 monitor/misc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/monitor/misc.c b/monitor/misc.c
index bb102df823..7ffe6f7a84 100644
--- a/monitor/misc.c
+++ b/monitor/misc.c
@@ -447,7 +447,7 @@ void qmp_client_migrate_info(const char *protocol, const char *hostname,
         return;
     }
 
-    error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "protocol", "spice");
+    error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "protocol", "'spice'");
 }
 
 static void hmp_logfile(Monitor *mon, const QDict *qdict)
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PULL 08/13] qga: Replace an unreachable error by abort()
  2020-12-10 16:31 [PULL 00/13] Miscellaneous patches for 2020-12-10 Markus Armbruster
                   ` (6 preceding siblings ...)
  2020-12-10 16:31 ` [PULL 07/13] ui: Tweak " Markus Armbruster
@ 2020-12-10 16:31 ` Markus Armbruster
  2020-12-10 16:31 ` [PULL 09/13] qga: Tweak a guest-shutdown error message Markus Armbruster
                   ` (5 subsequent siblings)
  13 siblings, 0 replies; 16+ messages in thread
From: Markus Armbruster @ 2020-12-10 16:31 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell, Michael Roth

check_suspend_mode()'s error message

    Parameter 'mode' expects GuestSuspendMode

makes no sense to users: GuestSuspendMode is a C enum.  Fortunately,
it is unreachable.  Replace it by abort().

Cc: Michael Roth <mdroth@linux.vnet.ibm.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20201113082626.2725812-8-armbru@redhat.com>
---
 qga/commands-win32.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/qga/commands-win32.c b/qga/commands-win32.c
index 300b87c859..87dc43e837 100644
--- a/qga/commands-win32.c
+++ b/qga/commands-win32.c
@@ -1441,8 +1441,7 @@ static void check_suspend_mode(GuestSuspendMode mode, Error **errp)
         }
         break;
     default:
-        error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "mode",
-                   "GuestSuspendMode");
+        abort();
     }
 }
 
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PULL 09/13] qga: Tweak a guest-shutdown error message
  2020-12-10 16:31 [PULL 00/13] Miscellaneous patches for 2020-12-10 Markus Armbruster
                   ` (7 preceding siblings ...)
  2020-12-10 16:31 ` [PULL 08/13] qga: Replace an unreachable error by abort() Markus Armbruster
@ 2020-12-10 16:31 ` Markus Armbruster
  2020-12-10 16:31 ` [PULL 10/13] qom: Improve {qom, device}-list-properties error messages Markus Armbruster
                   ` (4 subsequent siblings)
  13 siblings, 0 replies; 16+ messages in thread
From: Markus Armbruster @ 2020-12-10 16:31 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell, Michael Roth

Change

    Parameter 'mode' expects halt|powerdown|reboot

to

    Parameter 'mode' expects 'halt', 'powerdown', or 'reboot'

for consistency with similar error messages elsewhere.

Cc: Michael Roth <mdroth@linux.vnet.ibm.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20201113082626.2725812-9-armbru@redhat.com>
---
 qga/commands-win32.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/qga/commands-win32.c b/qga/commands-win32.c
index 87dc43e837..ba1fd07d06 100644
--- a/qga/commands-win32.c
+++ b/qga/commands-win32.c
@@ -334,7 +334,7 @@ void qmp_guest_shutdown(bool has_mode, const char *mode, Error **errp)
         shutdown_flag |= EWX_REBOOT;
     } else {
         error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "mode",
-                   "halt|powerdown|reboot");
+                   "'halt', 'powerdown', or 'reboot'");
         return;
     }
 
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PULL 10/13] qom: Improve {qom, device}-list-properties error messages
  2020-12-10 16:31 [PULL 00/13] Miscellaneous patches for 2020-12-10 Markus Armbruster
                   ` (8 preceding siblings ...)
  2020-12-10 16:31 ` [PULL 09/13] qga: Tweak a guest-shutdown error message Markus Armbruster
@ 2020-12-10 16:31 ` Markus Armbruster
  2020-12-10 16:31 ` [PULL 11/13] Tweak a few "Parameter 'NAME' expects THING" error message Markus Armbruster
                   ` (3 subsequent siblings)
  13 siblings, 0 replies; 16+ messages in thread
From: Markus Armbruster @ 2020-12-10 16:31 UTC (permalink / raw)
  To: qemu-devel
  Cc: peter.maydell, Daniel P. Berrangé, Eduardo Habkost, Paolo Bonzini

device-list-properties reports

    Parameter 'typename' expects device

when @typename exists, but isn't a TYPE_DEVICE.  Improve this to

    Parameter 'typename' expects a non-abstract device type

qom-list-properties reports

    Parameter 'typename' expects object

when @typename exists, but isn't a TYPE_OBJECT.  Improve this to

    Parameter 'typename' expects a QOM type

Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: "Daniel P. Berrangé" <berrange@redhat.com>
Cc: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20201113082626.2725812-10-armbru@redhat.com>
---
 qom/qom-qmp-cmds.c | 17 ++++++-----------
 1 file changed, 6 insertions(+), 11 deletions(-)

diff --git a/qom/qom-qmp-cmds.c b/qom/qom-qmp-cmds.c
index 310ab2d048..2dd233f293 100644
--- a/qom/qom-qmp-cmds.c
+++ b/qom/qom-qmp-cmds.c
@@ -138,15 +138,10 @@ ObjectPropertyInfoList *qmp_device_list_properties(const char *typename,
         return NULL;
     }
 
-    klass = object_class_dynamic_cast(klass, TYPE_DEVICE);
-    if (klass == NULL) {
-        error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "typename", TYPE_DEVICE);
-        return NULL;
-    }
-
-    if (object_class_is_abstract(klass)) {
+    if (!object_class_dynamic_cast(klass, TYPE_DEVICE)
+        || object_class_is_abstract(klass)) {
         error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "typename",
-                   "non-abstract device type");
+                   "a non-abstract device type");
         return NULL;
     }
 
@@ -208,9 +203,9 @@ ObjectPropertyInfoList *qmp_qom_list_properties(const char *typename,
         return NULL;
     }
 
-    klass = object_class_dynamic_cast(klass, TYPE_OBJECT);
-    if (klass == NULL) {
-        error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "typename", TYPE_OBJECT);
+    if (!object_class_dynamic_cast(klass, TYPE_OBJECT)) {
+        error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "typename",
+                   "a QOM type");
         return NULL;
     }
 
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PULL 11/13] Tweak a few "Parameter 'NAME' expects THING" error message
  2020-12-10 16:31 [PULL 00/13] Miscellaneous patches for 2020-12-10 Markus Armbruster
                   ` (9 preceding siblings ...)
  2020-12-10 16:31 ` [PULL 10/13] qom: Improve {qom, device}-list-properties error messages Markus Armbruster
@ 2020-12-10 16:31 ` Markus Armbruster
  2020-12-10 16:31 ` [PULL 12/13] qapi: Normalize version references x.y.0 to just x.y Markus Armbruster
                   ` (2 subsequent siblings)
  13 siblings, 0 replies; 16+ messages in thread
From: Markus Armbruster @ 2020-12-10 16:31 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell

Change to "expects a THING" where that's an obvious improvement

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20201113082626.2725812-11-armbru@redhat.com>
---
 block/quorum.c                   | 2 +-
 blockdev.c                       | 2 +-
 chardev/char.c                   | 2 +-
 hw/core/qdev-properties-system.c | 2 +-
 softmmu/qdev-monitor.c           | 4 ++--
 5 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/block/quorum.c b/block/quorum.c
index b10fc2089e..4b08a199b7 100644
--- a/block/quorum.c
+++ b/block/quorum.c
@@ -856,7 +856,7 @@ static int quorum_valid_threshold(int threshold, int num_children, Error **errp)
 
     if (threshold < 1) {
         error_setg(errp, QERR_INVALID_PARAMETER_VALUE,
-                   "vote-threshold", "value >= 1");
+                   "vote-threshold", "a value >= 1");
         return -ERANGE;
     }
 
diff --git a/blockdev.c b/blockdev.c
index d05a8740f4..6c7be7c522 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -2991,7 +2991,7 @@ static void blockdev_mirror_common(const char *job_id, BlockDriverState *bs,
     }
     if (granularity & (granularity - 1)) {
         error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "granularity",
-                   "power of 2");
+                   "a power of 2");
         return;
     }
 
diff --git a/chardev/char.c b/chardev/char.c
index aa4282164a..a9b8c5a9aa 100644
--- a/chardev/char.c
+++ b/chardev/char.c
@@ -521,7 +521,7 @@ static const ChardevClass *char_get_class(const char *driver, Error **errp)
 
     if (object_class_is_abstract(oc)) {
         error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "driver",
-                   "abstract device type");
+                   "an abstract device type");
         return NULL;
     }
 
diff --git a/hw/core/qdev-properties-system.c b/hw/core/qdev-properties-system.c
index 9d80a07d26..8912fb4e9c 100644
--- a/hw/core/qdev-properties-system.c
+++ b/hw/core/qdev-properties-system.c
@@ -776,7 +776,7 @@ static void set_pci_devfn(Object *obj, Visitor *v, const char *name,
         }
         if (value < -1 || value > 255) {
             error_setg(errp, QERR_INVALID_PARAMETER_VALUE,
-                       name ? name : "null", "pci_devfn");
+                       name ? name : "null", "a value between -1 and 255");
             return;
         }
         *ptr = value;
diff --git a/softmmu/qdev-monitor.c b/softmmu/qdev-monitor.c
index 301089eaea..31e5b589b7 100644
--- a/softmmu/qdev-monitor.c
+++ b/softmmu/qdev-monitor.c
@@ -237,7 +237,7 @@ static DeviceClass *qdev_get_device_class(const char **driver, Error **errp)
 
     if (object_class_is_abstract(oc)) {
         error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "driver",
-                   "non-abstract device type");
+                   "a non-abstract device type");
         return NULL;
     }
 
@@ -245,7 +245,7 @@ static DeviceClass *qdev_get_device_class(const char **driver, Error **errp)
     if (!dc->user_creatable ||
         (qdev_hotplug && !dc->hotpluggable)) {
         error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "driver",
-                   "pluggable device type");
+                   "a pluggable device type");
         return NULL;
     }
 
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PULL 12/13] qapi: Normalize version references x.y.0 to just x.y
  2020-12-10 16:31 [PULL 00/13] Miscellaneous patches for 2020-12-10 Markus Armbruster
                   ` (10 preceding siblings ...)
  2020-12-10 16:31 ` [PULL 11/13] Tweak a few "Parameter 'NAME' expects THING" error message Markus Armbruster
@ 2020-12-10 16:31 ` Markus Armbruster
  2020-12-10 16:31 ` [PULL 13/13] docs/devel/writing-qmp-commands.txt: Fix docs Markus Armbruster
  2020-12-10 19:30 ` [PULL 00/13] Miscellaneous patches for 2020-12-10 Peter Maydell
  13 siblings, 0 replies; 16+ messages in thread
From: Markus Armbruster @ 2020-12-10 16:31 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell, Eduardo Habkost

We use x.y most of the time, and x.y.0 sometimes.  Normalize for
consistency.

Reported-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20201118064158.3359056-1-armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
---
 qapi/block-core.json     | 28 ++++++++++++------------
 qapi/block-export.json   |  6 +++---
 qapi/block.json          |  2 +-
 qapi/char.json           |  4 ++--
 qapi/control.json        | 14 ++++++------
 qapi/machine-target.json | 22 +++++++++----------
 qapi/machine.json        | 46 ++++++++++++++++++++--------------------
 qapi/migration.json      | 16 +++++++-------
 qapi/misc-target.json    |  2 +-
 qapi/misc.json           | 30 +++++++++++++-------------
 qapi/net.json            |  6 +++---
 qapi/pci.json            | 12 +++++------
 qapi/qdev.json           |  2 +-
 qapi/run-state.json      | 16 +++++++-------
 qapi/ui.json             | 40 +++++++++++++++++-----------------
 15 files changed, 123 insertions(+), 123 deletions(-)

diff --git a/qapi/block-core.json b/qapi/block-core.json
index 04ad80bc1e..04c5196e59 100644
--- a/qapi/block-core.json
+++ b/qapi/block-core.json
@@ -302,7 +302,7 @@
 # @ro: true if the backing device was open read-only
 #
 # @drv: the name of the block format used to open the backing device. As of
-#       0.14.0 this can be: 'blkdebug', 'bochs', 'cloop', 'cow', 'dmg',
+#       0.14 this can be: 'blkdebug', 'bochs', 'cloop', 'cow', 'dmg',
 #       'file', 'file', 'ftp', 'ftps', 'host_cdrom', 'host_device',
 #       'http', 'https', 'luks', 'nbd', 'parallels', 'qcow',
 #       'qcow2', 'raw', 'vdi', 'vmdk', 'vpc', 'vvfat'
@@ -389,7 +389,7 @@
 # @deprecated: Member @encryption_key_missing is deprecated.  It is
 #              always false.
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 ##
 { 'struct': 'BlockDeviceInfo',
@@ -607,7 +607,7 @@
 # @deprecated: Member @dirty-bitmaps is deprecated.  Use @inserted
 #              member @dirty-bitmaps instead.
 #
-# Since:  0.14.0
+# Since:  0.14
 ##
 { 'struct': 'BlockInfo',
   'data': {'device': 'str', '*qdev': 'str', 'type': 'str', 'removable': 'bool',
@@ -655,7 +655,7 @@
 # Returns: a list of @BlockInfo describing each virtual block device. Filter
 #          nodes that were created implicitly are skipped over.
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -812,17 +812,17 @@
 # @wr_operations: The number of write operations performed by the device.
 #
 # @flush_operations: The number of cache flush operations performed by the
-#                    device (since 0.15.0)
+#                    device (since 0.15)
 #
 # @unmap_operations: The number of unmap operations performed by the device
 #                    (Since 4.2)
 #
-# @rd_total_time_ns: Total time spent on reads in nanoseconds (since 0.15.0).
+# @rd_total_time_ns: Total time spent on reads in nanoseconds (since 0.15).
 #
-# @wr_total_time_ns: Total time spent on writes in nanoseconds (since 0.15.0).
+# @wr_total_time_ns: Total time spent on writes in nanoseconds (since 0.15).
 #
 # @flush_total_time_ns: Total time spent on cache flushes in nanoseconds
-#                       (since 0.15.0).
+#                       (since 0.15).
 #
 # @unmap_total_time_ns: Total time spent on unmap operations in nanoseconds
 #                       (Since 4.2)
@@ -884,7 +884,7 @@
 #
 # @flush_latency_histogram: @BlockLatencyHistogramInfo. (Since 4.0)
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'BlockDeviceStats',
   'data': {'rd_bytes': 'int', 'wr_bytes': 'int', 'unmap_bytes' : 'int',
@@ -987,7 +987,7 @@
 # @backing: This describes the backing block device if it has one.
 #           (Since 2.0)
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'BlockStats',
   'data': {'*device': 'str', '*qdev': 'str', '*node-name': 'str',
@@ -1011,7 +1011,7 @@
 #
 # Returns: A list of @BlockStats for each virtual block devices.
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -1299,7 +1299,7 @@
 # Returns: - nothing on success
 #          - If @device is not a valid block device, DeviceNotFound
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -1484,7 +1484,7 @@
 # Returns: - nothing on success
 #          - If @device is not a valid block device, DeviceNotFound
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -4852,7 +4852,7 @@
 # Note: If action is "stop", a STOP event will eventually follow the
 #       BLOCK_IO_ERROR event
 #
-# Since: 0.13.0
+# Since: 0.13
 #
 # Example:
 #
diff --git a/qapi/block-export.json b/qapi/block-export.json
index a9f488f99c..4eeac7842d 100644
--- a/qapi/block-export.json
+++ b/qapi/block-export.json
@@ -54,7 +54,7 @@
 #
 # Returns: error if the server is already running.
 #
-# Since: 1.3.0
+# Since: 1.3
 ##
 { 'command': 'nbd-server-start',
   'data': { 'addr': 'SocketAddressLegacy',
@@ -155,7 +155,7 @@
 # Returns: error if the server is not running, or export with the same name
 #          already exists.
 #
-# Since: 1.3.0
+# Since: 1.3
 ##
 { 'command': 'nbd-server-add',
   'data': 'NbdServerAddOptions', 'boxed': true, 'features': ['deprecated'] }
@@ -211,7 +211,7 @@
 # Stop QEMU's embedded NBD server, and unregister all devices previously
 # added via @nbd-server-add.
 #
-# Since: 1.3.0
+# Since: 1.3
 ##
 { 'command': 'nbd-server-stop' }
 
diff --git a/qapi/block.json b/qapi/block.json
index a009f7d3a2..82fcf2c914 100644
--- a/qapi/block.json
+++ b/qapi/block.json
@@ -107,7 +107,7 @@
 #          - If @device is not a valid block device, DeviceNotFound
 # Notes:    Ejecting a device with no media results in success
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
diff --git a/qapi/char.json b/qapi/char.json
index 43486d1daa..58338ed62d 100644
--- a/qapi/char.json
+++ b/qapi/char.json
@@ -24,7 +24,7 @@
 # Notes: @filename is encoded using the QEMU command line character device
 #        encoding.  See the QEMU man page for details.
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'ChardevInfo',
   'data': { 'label': 'str',
@@ -38,7 +38,7 @@
 #
 # Returns: a list of @ChardevInfo
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
diff --git a/qapi/control.json b/qapi/control.json
index 134f842baf..9c8a51352d 100644
--- a/qapi/control.json
+++ b/qapi/control.json
@@ -87,7 +87,7 @@
 #           exact format depends on the downstream however it highly
 #           recommended that a unique name is used.
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'VersionInfo',
   'data': {'qemu': 'VersionTriple', 'package': 'str'} }
@@ -99,7 +99,7 @@
 #
 # Returns: A @VersionInfo object describing the current version of QEMU.
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -126,7 +126,7 @@
 #
 # @name: The command name
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'CommandInfo', 'data': {'name': 'str'} }
 
@@ -137,7 +137,7 @@
 #
 # Returns: A list of @CommandInfo for all supported commands
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -166,7 +166,7 @@
 #
 # @name: The event name
 #
-# Since: 1.2.0
+# Since: 1.2
 ##
 { 'struct': 'EventInfo', 'data': {'name': 'str'} }
 
@@ -182,7 +182,7 @@
 #
 # Returns: A list of @EventInfo.
 #
-# Since: 1.2.0
+# Since: 1.2
 #
 # Example:
 #
@@ -212,7 +212,7 @@
 # guaranteed.  When using this interface, a premature EOF would not be
 # unexpected.
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
diff --git a/qapi/machine-target.json b/qapi/machine-target.json
index fec3bb8679..e7811654b7 100644
--- a/qapi/machine-target.json
+++ b/qapi/machine-target.json
@@ -17,7 +17,7 @@
 # @name: the name of the CPU definition the model is based on
 # @props: a dictionary of QOM properties to be applied
 #
-# Since: 2.8.0
+# Since: 2.8
 ##
 { 'struct': 'CpuModelInfo',
   'data': { 'name': 'str',
@@ -49,7 +49,7 @@
 #       version or machine-type, use @static (but keep in mind that some features may
 #       be omitted).
 #
-# Since: 2.8.0
+# Since: 2.8
 ##
 { 'enum': 'CpuModelExpansionType',
   'data': [ 'static', 'full' ] }
@@ -73,7 +73,7 @@
 # @subset: If model A is a subset of model B, model A is guaranteed to run
 #          where model B runs. There are no guarantees about the other way.
 #
-# Since: 2.8.0
+# Since: 2.8
 ##
 { 'enum': 'CpuModelCompareResult',
   'data': [ 'incompatible', 'identical', 'superset', 'subset' ] }
@@ -85,7 +85,7 @@
 #
 # @model: the baselined CpuModelInfo.
 #
-# Since: 2.8.0
+# Since: 2.8
 ##
 { 'struct': 'CpuModelBaselineInfo',
   'data': { 'model': 'CpuModelInfo' },
@@ -107,7 +107,7 @@
 # CPU models identical. If the special property name "type" is included, the
 # models are by definition not identical and cannot be made identical.
 #
-# Since: 2.8.0
+# Since: 2.8
 ##
 { 'struct': 'CpuModelCompareInfo',
   'data': { 'result': 'CpuModelCompareResult',
@@ -151,7 +151,7 @@
 # Note: this command isn't specific to s390x, but is only implemented
 #       on this architecture currently.
 #
-# Since: 2.8.0
+# Since: 2.8
 ##
 { 'command': 'query-cpu-model-comparison',
   'data': { 'modela': 'CpuModelInfo', 'modelb': 'CpuModelInfo' },
@@ -194,7 +194,7 @@
 # Note: this command isn't specific to s390x, but is only implemented
 #       on this architecture currently.
 #
-# Since: 2.8.0
+# Since: 2.8
 ##
 { 'command': 'query-cpu-model-baseline',
   'data': { 'modela': 'CpuModelInfo',
@@ -209,7 +209,7 @@
 #
 # @model: the expanded CpuModelInfo.
 #
-# Since: 2.8.0
+# Since: 2.8
 ##
 { 'struct': 'CpuModelExpansionInfo',
   'data': { 'model': 'CpuModelInfo' },
@@ -246,7 +246,7 @@
 #          with a wrong type. Also returns an error if an expansion type is
 #          not supported.
 #
-# Since: 2.8.0
+# Since: 2.8
 ##
 { 'command': 'query-cpu-model-expansion',
   'data': { 'type': 'CpuModelExpansionType',
@@ -306,7 +306,7 @@
 # If @unavailable-features is not present, runnability
 # information for the CPU is not available.
 #
-# Since: 1.2.0
+# Since: 1.2
 ##
 { 'struct': 'CpuDefinitionInfo',
   'data': { 'name': 'str',
@@ -325,7 +325,7 @@
 #
 # Returns: a list of CpuDefInfo
 #
-# Since: 1.2.0
+# Since: 1.2
 ##
 { 'command': 'query-cpu-definitions', 'returns': ['CpuDefinitionInfo'],
   'if': 'defined(TARGET_PPC) || defined(TARGET_ARM) || defined(TARGET_I386) || defined(TARGET_S390X) || defined(TARGET_MIPS)' }
diff --git a/qapi/machine.json b/qapi/machine.json
index 7c9a263778..330189efe3 100644
--- a/qapi/machine.json
+++ b/qapi/machine.json
@@ -71,7 +71,7 @@
 # @arch: architecture of the cpu, which determines which additional fields
 #        will be listed (since 2.6)
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Notes: @halted is a transient state that changes frequently.  By the time the
 #        data is sent to the client, the guest may no longer be halted.
@@ -196,7 +196,7 @@
 #
 # Returns: a list of @CpuInfo for each virtual CPU
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -319,23 +319,23 @@
 # @is-default: whether the machine is default
 #
 # @cpu-max: maximum number of CPUs supported by the machine type
-#           (since 1.5.0)
+#           (since 1.5)
 #
-# @hotpluggable-cpus: cpu hotplug via -device is supported (since 2.7.0)
+# @hotpluggable-cpus: cpu hotplug via -device is supported (since 2.7)
 #
 # @numa-mem-supported: true if '-numa node,mem' option is supported by
 #                      the machine type and false otherwise (since 4.1)
 #
 # @deprecated: if true, the machine type is deprecated and may be removed
 #              in future versions of QEMU according to the QEMU deprecation
-#              policy (since 4.1.0)
+#              policy (since 4.1)
 #
 # @default-cpu-type: default CPU model typename if none is requested via
 #                    the -cpu argument. (since 4.2)
 #
 # @default-ram-id: the default ID of initial RAM memory backend (since 5.2)
 #
-# Since: 1.2.0
+# Since: 1.2
 ##
 { 'struct': 'MachineInfo',
   'data': { 'name': 'str', '*alias': 'str',
@@ -351,7 +351,7 @@
 #
 # Returns: a list of MachineInfo
 #
-# Since: 1.2.0
+# Since: 1.2
 ##
 { 'command': 'query-machines', 'returns': ['MachineInfo'] }
 
@@ -386,7 +386,7 @@
 #
 # @arch: the target architecture
 #
-# Since: 1.2.0
+# Since: 1.2
 ##
 { 'struct': 'TargetInfo',
   'data': { 'arch': 'SysEmuTarget' } }
@@ -398,7 +398,7 @@
 #
 # Returns: TargetInfo
 #
-# Since: 1.2.0
+# Since: 1.2
 ##
 { 'command': 'query-target', 'returns': 'TargetInfo' }
 
@@ -409,7 +409,7 @@
 #
 # @UUID: the UUID of the guest
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Notes: If no UUID was specified for the guest, a null UUID is returned.
 ##
@@ -422,7 +422,7 @@
 #
 # Returns: The @UuidInfo for the guest
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -457,7 +457,7 @@
 #
 # Performs a hard reset of a guest.
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -472,7 +472,7 @@
 #
 # Requests that a guest perform a powerdown operation.
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Notes: A guest may or may not respond to this command.  This command
 #        returning does not indicate that a guest has accepted the request or
@@ -549,7 +549,7 @@
 #
 # Returns:  If successful, nothing
 #
-# Since:  0.14.0
+# Since:  0.14
 #
 # Note: prior to 2.1, this command was only supported for x86 and s390 VMs
 #
@@ -570,7 +570,7 @@
 #
 # @present: true if KVM acceleration is built into this executable
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'KvmInfo', 'data': {'enabled': 'bool', 'present': 'bool'} }
 
@@ -581,7 +581,7 @@
 #
 # Returns: @KvmInfo
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -933,7 +933,7 @@
 #
 # Returns: Nothing on success
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Notes: Errors were not reliably returned until 1.1
 #
@@ -962,7 +962,7 @@
 #
 # Returns: Nothing on success
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Notes: Errors were not reliably returned until 1.1
 #
@@ -1185,7 +1185,7 @@
 #        the balloon size may not have changed.  A guest can change the balloon
 #        size independent of this command.
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -1205,7 +1205,7 @@
 # @actual: the logical size of the VM in bytes
 #          Formula used: logical_vm_size = vm_ram_size - balloon_size
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 ##
 { 'struct': 'BalloonInfo', 'data': {'actual': 'int' } }
@@ -1220,7 +1220,7 @@
 #            kernel module cannot support it, KvmMissingCap
 #          - If no balloon device is present, DeviceNotActive
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -1268,7 +1268,7 @@
 #                  is omitted if target doesn't support memory hotplug
 #                  (i.e. CONFIG_MEM_DEVICE not defined at build time).
 #
-# Since: 2.11.0
+# Since: 2.11
 ##
 { 'struct': 'MemoryInfo',
   'data'  : { 'base-memory': 'size', '*plugged-memory': 'size' } }
@@ -1284,7 +1284,7 @@
 # -> { "execute": "query-memory-size-summary" }
 # <- { "return": { "base-memory": 4294967296, "plugged-memory": 0 } }
 #
-# Since: 2.11.0
+# Since: 2.11
 ##
 { 'command': 'query-memory-size-summary', 'returns': 'MemoryInfo' }
 
diff --git a/qapi/migration.json b/qapi/migration.json
index 3c75820527..d1d9632c2a 100644
--- a/qapi/migration.json
+++ b/qapi/migration.json
@@ -46,7 +46,7 @@
 # @pages-per-second: the number of memory pages transferred per second
 #                    (Since 4.0)
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'MigrationStats',
   'data': {'transferred': 'int', 'remaining': 'int', 'total': 'int' ,
@@ -224,7 +224,7 @@
 #        only returned if VFIO device is present, migration is supported by all
 #        VFIO devices and status is 'active' or 'completed' (since 5.2)
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'MigrationInfo',
   'data': {'*status': 'MigrationStatus', '*ram': 'MigrationStats',
@@ -252,7 +252,7 @@
 #
 # Returns: @MigrationInfo
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -1143,7 +1143,7 @@
 # @tls-port:     spice tcp port for tls-secured channels
 # @cert-subject: server certificate subject
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -1343,7 +1343,7 @@
 #
 # Notes: This command succeeds even if there is no migration process running.
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -1383,7 +1383,7 @@
 #
 # Returns: nothing on success
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -1407,7 +1407,7 @@
 #
 # Returns: nothing on success
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -1486,7 +1486,7 @@
 #
 # Returns: nothing on success
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Notes:
 #
diff --git a/qapi/misc-target.json b/qapi/misc-target.json
index 1e561fa97b..cbe5135264 100644
--- a/qapi/misc-target.json
+++ b/qapi/misc-target.json
@@ -12,7 +12,7 @@
 #
 # Note: This event is rate-limited.
 #
-# Since: 0.13.0
+# Since: 0.13
 #
 # Example:
 #
diff --git a/qapi/misc.json b/qapi/misc.json
index 40df513856..27ccd7385f 100644
--- a/qapi/misc.json
+++ b/qapi/misc.json
@@ -27,7 +27,7 @@
 #
 # Returns: nothing on success.
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -47,7 +47,7 @@
 #
 # @name: The name of the guest
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'NameInfo', 'data': {'*name': 'str'} }
 
@@ -58,7 +58,7 @@
 #
 # Returns: @NameInfo of the guest
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -132,7 +132,7 @@
 #
 # Stop all guest VCPU execution.
 #
-# Since:  0.14.0
+# Since:  0.14
 #
 # Notes: This function will succeed even if the guest is already in the stopped
 #        state.  In "inmigrate" state, it will ensure that the guest
@@ -152,7 +152,7 @@
 #
 # Resume guest VCPU execution.
 #
-# Since:  0.14.0
+# Since:  0.14
 #
 # Returns:  If successful, nothing
 #
@@ -210,7 +210,7 @@
 #
 # Returns: the output of the command as a string
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Notes: This command only exists as a stop-gap.  Its use is highly
 #        discouraged.  The semantics of this command are not
@@ -264,7 +264,7 @@
 # Returns: - Nothing on success.
 #          - If @device is not a valid block device, DeviceNotFound
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -296,7 +296,7 @@
 #
 # Returns: Nothing on success
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Notes: If @fdname already exists, the file descriptor assigned to
 #        it will be closed and replaced by the received file
@@ -322,7 +322,7 @@
 #
 # Returns: Nothing on success
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -342,7 +342,7 @@
 # @fd: The file descriptor that was received via SCM rights and
 #      added to the fd set.
 #
-# Since: 1.2.0
+# Since: 1.2
 ##
 { 'struct': 'AddfdInfo', 'data': {'fdset-id': 'int', 'fd': 'int'} }
 
@@ -363,7 +363,7 @@
 #
 #        If @fdset-id is not specified, a new fd set will be created.
 #
-# Since: 1.2.0
+# Since: 1.2
 #
 # Example:
 #
@@ -388,7 +388,7 @@
 # Returns: - Nothing on success
 #          - If @fdset-id or @fd is not found, FdNotFound
 #
-# Since: 1.2.0
+# Since: 1.2
 #
 # Notes: The list of fd sets is shared by all monitor connections.
 #
@@ -412,7 +412,7 @@
 #
 # @opaque: A free-form string that can be used to describe the fd.
 #
-# Since: 1.2.0
+# Since: 1.2
 ##
 { 'struct': 'FdsetFdInfo',
   'data': {'fd': 'int', '*opaque': 'str'} }
@@ -426,7 +426,7 @@
 #
 # @fds: A list of file descriptors that belong to this fd set.
 #
-# Since: 1.2.0
+# Since: 1.2
 ##
 { 'struct': 'FdsetInfo',
   'data': {'fdset-id': 'int', 'fds': ['FdsetFdInfo']} }
@@ -438,7 +438,7 @@
 #
 # Returns: A list of @FdsetInfo
 #
-# Since: 1.2.0
+# Since: 1.2
 #
 # Note: The list of fd sets is shared by all monitor connections.
 #
diff --git a/qapi/net.json b/qapi/net.json
index a3a1336001..c31748c87f 100644
--- a/qapi/net.json
+++ b/qapi/net.json
@@ -20,7 +20,7 @@
 # Returns: Nothing on success
 #          If @name is not a valid network device, DeviceNotFound
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Notes: Not all network adapters support setting link status.  This command
 #        will succeed even if the network adapter does not support link status
@@ -42,7 +42,7 @@
 #
 # Additional arguments depend on the type.
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Returns: Nothing on success
 #          If @type is not a valid network backend, DeviceNotFound
@@ -67,7 +67,7 @@
 # Returns: Nothing on success
 #          If @id is not a valid network backend, DeviceNotFound
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
diff --git a/qapi/pci.json b/qapi/pci.json
index b79cbd787b..ee7c659fec 100644
--- a/qapi/pci.json
+++ b/qapi/pci.json
@@ -18,7 +18,7 @@
 #
 # @limit: the ending address (guest physical)
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'PciMemoryRange', 'data': {'base': 'int', 'limit': 'int'} }
 
@@ -38,7 +38,7 @@
 #
 # @mem_type_64: if @type is 'memory', true if the BAR is 64-bit
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'PciMemoryRegion',
   'data': {'bar': 'int', 'type': 'str', 'address': 'int', 'size': 'int',
@@ -82,7 +82,7 @@
 #
 # @devices: a list of @PciDeviceInfo for each device on this bridge
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'PciBridgeInfo',
   'data': {'bus': 'PciBusInfo', '*devices': ['PciDeviceInfo']} }
@@ -148,7 +148,7 @@
 # Notes: the contents of @class_info.desc are not stable and should only be
 #        treated as informational.
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'PciDeviceInfo',
   'data': {'bus': 'int', 'slot': 'int', 'function': 'int',
@@ -165,7 +165,7 @@
 #
 # @devices: a list of devices on this bus
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'PciInfo', 'data': {'bus': 'int', 'devices': ['PciDeviceInfo']} }
 
@@ -179,7 +179,7 @@
 #          all PCI devices attached to it. Each device is represented by a
 #          json-object.
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
diff --git a/qapi/qdev.json b/qapi/qdev.json
index 13254529bf..b83178220b 100644
--- a/qapi/qdev.json
+++ b/qapi/qdev.json
@@ -86,7 +86,7 @@
 #        DEVICE_DELETED event. Guest reset will automatically complete removal
 #        for all devices.
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
diff --git a/qapi/run-state.json b/qapi/run-state.json
index 964c8ef391..b2f77cbf3f 100644
--- a/qapi/run-state.json
+++ b/qapi/run-state.json
@@ -107,7 +107,7 @@
 #
 # @status: the virtual machine @RunState
 #
-# Since:  0.14.0
+# Since:  0.14
 #
 # Notes: @singlestep is enabled through the GDB stub
 ##
@@ -121,7 +121,7 @@
 #
 # Returns: @StatusInfo reflecting all VCPUs
 #
-# Since:  0.14.0
+# Since:  0.14
 #
 # Example:
 #
@@ -149,7 +149,7 @@
 # Note: If the command-line option "-no-shutdown" has been specified, qemu will
 #       not exit, and a STOP event will eventually follow the SHUTDOWN event
 #
-# Since: 0.12.0
+# Since: 0.12
 #
 # Example:
 #
@@ -165,7 +165,7 @@
 # Emitted when the virtual machine is powered down through the power control
 # system, such as via ACPI.
 #
-# Since: 0.12.0
+# Since: 0.12
 #
 # Example:
 #
@@ -187,7 +187,7 @@
 #
 # @reason: The @ShutdownCause of the RESET. (since 4.0)
 #
-# Since: 0.12.0
+# Since: 0.12
 #
 # Example:
 #
@@ -202,7 +202,7 @@
 #
 # Emitted when the virtual machine is stopped
 #
-# Since: 0.12.0
+# Since: 0.12
 #
 # Example:
 #
@@ -217,7 +217,7 @@
 #
 # Emitted when the virtual machine resumes execution
 #
-# Since: 0.12.0
+# Since: 0.12
 #
 # Example:
 #
@@ -288,7 +288,7 @@
 #
 # Note: This event is rate-limited.
 #
-# Since: 0.13.0
+# Since: 0.13
 #
 # Example:
 #
diff --git a/qapi/ui.json b/qapi/ui.json
index 6c7b33cb72..d08d72b439 100644
--- a/qapi/ui.json
+++ b/qapi/ui.json
@@ -27,7 +27,7 @@
 # Returns: - Nothing on success
 #          - If Spice is not enabled, DeviceNotFound
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -56,7 +56,7 @@
 # Returns: - Nothing on success
 #          - If @protocol is 'spice' and Spice is not active, DeviceNotFound
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Notes: Time is relative to the server and currently there is no way to
 #        coordinate server time with client time.  It is not recommended to
@@ -88,7 +88,7 @@
 #
 # Returns: Nothing on success
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -156,7 +156,7 @@
 #
 # @tls: true if the channel is encrypted, false otherwise.
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'SpiceChannel',
   'base': 'SpiceBasicInfo',
@@ -215,7 +215,7 @@
 #
 # @channels: a list of @SpiceChannel for each active spice channel
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'SpiceInfo',
   'data': {'enabled': 'bool', 'migrated': 'bool', '*host': 'str', '*port': 'int',
@@ -230,7 +230,7 @@
 #
 # Returns: @SpiceInfo
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -278,7 +278,7 @@
 #
 # @client: client information
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -305,7 +305,7 @@
 #
 # @client: client information
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -333,7 +333,7 @@
 #
 # @client: client information
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -420,7 +420,7 @@
 # @sasl_username: If SASL authentication is in use, the SASL username
 #                 used for authentication.
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'VncClientInfo',
   'base': 'VncBasicInfo',
@@ -462,7 +462,7 @@
 #
 # @clients: a list of @VncClientInfo of all currently connected clients
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'VncInfo',
   'data': {'enabled': 'bool', '*host': 'str',
@@ -555,7 +555,7 @@
 #
 # Returns: @VncInfo
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -619,7 +619,7 @@
 # Note: This event is emitted before any authentication takes place, thus
 #       the authentication ID is not provided
 #
-# Since: 0.13.0
+# Since: 0.13
 #
 # Example:
 #
@@ -647,7 +647,7 @@
 #
 # @client: client information
 #
-# Since: 0.13.0
+# Since: 0.13
 #
 # Example:
 #
@@ -674,7 +674,7 @@
 #
 # @client: client information
 #
-# Since: 0.13.0
+# Since: 0.13
 #
 # Example:
 #
@@ -709,7 +709,7 @@
 #
 # @absolute: true if this device supports absolute coordinates as input
 #
-# Since: 0.14.0
+# Since: 0.14
 ##
 { 'struct': 'MouseInfo',
   'data': {'name': 'str', 'index': 'int', 'current': 'bool',
@@ -722,7 +722,7 @@
 #
 # Returns: a list of @MouseInfo for each device
 #
-# Since: 0.14.0
+# Since: 0.14
 #
 # Example:
 #
@@ -792,7 +792,7 @@
 # 'sysrq' will be transparently changed to 'print', so they
 # are effectively synonyms.
 #
-# Since: 1.3.0
+# Since: 1.3
 #
 ##
 { 'enum': 'QKeyCode',
@@ -824,7 +824,7 @@
 #
 # Represents a keyboard key.
 #
-# Since: 1.3.0
+# Since: 1.3
 ##
 { 'union': 'KeyValue',
   'data': {
@@ -847,7 +847,7 @@
 # Returns: - Nothing on success
 #          - If key is unknown or redundant, InvalidParameter
 #
-# Since: 1.3.0
+# Since: 1.3
 #
 # Example:
 #
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PULL 13/13] docs/devel/writing-qmp-commands.txt: Fix docs
  2020-12-10 16:31 [PULL 00/13] Miscellaneous patches for 2020-12-10 Markus Armbruster
                   ` (11 preceding siblings ...)
  2020-12-10 16:31 ` [PULL 12/13] qapi: Normalize version references x.y.0 to just x.y Markus Armbruster
@ 2020-12-10 16:31 ` Markus Armbruster
  2020-12-11  2:11   ` Zihao Chang
  2020-12-10 19:30 ` [PULL 00/13] Miscellaneous patches for 2020-12-10 Peter Maydell
  13 siblings, 1 reply; 16+ messages in thread
From: Markus Armbruster @ 2020-12-10 16:31 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell, Zihao Chang

From: Zihao Chang <changzihao1@huawei.com>

Fix the example of add qmp hello-world example.
Without ":", make will report error:
../qapi/misc.json:573:2: line should end with ':'

Signed-off-by: Zihao Chang <changzihao1@huawei.com>
Message-Id: <20201201143308.1626-1-changzihao1@huawei.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
---
 docs/devel/writing-qmp-commands.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/docs/devel/writing-qmp-commands.txt b/docs/devel/writing-qmp-commands.txt
index 46a6c48683..28984686c9 100644
--- a/docs/devel/writing-qmp-commands.txt
+++ b/docs/devel/writing-qmp-commands.txt
@@ -243,7 +243,7 @@ There are many examples of such documentation in the schema file already, but
 here goes "hello-world"'s new entry for qapi/misc.json:
 
 ##
-# @hello-world
+# @hello-world:
 #
 # Print a client provided string to the standard output stream.
 #
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [PULL 00/13] Miscellaneous patches for 2020-12-10
  2020-12-10 16:31 [PULL 00/13] Miscellaneous patches for 2020-12-10 Markus Armbruster
                   ` (12 preceding siblings ...)
  2020-12-10 16:31 ` [PULL 13/13] docs/devel/writing-qmp-commands.txt: Fix docs Markus Armbruster
@ 2020-12-10 19:30 ` Peter Maydell
  13 siblings, 0 replies; 16+ messages in thread
From: Peter Maydell @ 2020-12-10 19:30 UTC (permalink / raw)
  To: Markus Armbruster; +Cc: QEMU Developers

On Thu, 10 Dec 2020 at 16:32, Markus Armbruster <armbru@redhat.com> wrote:
>
> The following changes since commit 00ef48ff0de9c3e5834e7e3f6691bbc80d08c114:
>
>   Merge remote-tracking branch 'remotes/kraxel/tags/microvm-20201210-pull-request' into staging (2020-12-10 12:53:01 +0000)
>
> are available in the Git repository at:
>
>   git://repo.or.cz/qemu/armbru.git tags/pull-misc-2020-12-10
>
> for you to fetch changes up to 4eb79bdf87206a223a7ad7a698af519d2ec75c14:
>
>   docs/devel/writing-qmp-commands.txt: Fix docs (2020-12-10 17:16:44 +0100)
>
> ----------------------------------------------------------------
> Miscellaneous patches for 2020-12-10
>


Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/6.0
for any user-visible changes.

-- PMM


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PULL 13/13] docs/devel/writing-qmp-commands.txt: Fix docs
  2020-12-10 16:31 ` [PULL 13/13] docs/devel/writing-qmp-commands.txt: Fix docs Markus Armbruster
@ 2020-12-11  2:11   ` Zihao Chang
  0 siblings, 0 replies; 16+ messages in thread
From: Zihao Chang @ 2020-12-11  2:11 UTC (permalink / raw)
  To: Markus Armbruster, qemu-devel; +Cc: peter.maydell, xiexiangyou



On 2020/12/11 0:31, Markus Armbruster wrote:
> From: Zihao Chang <changzihao1@huawei.com>
> 
> Fix the example of add qmp hello-world example.
> Without ":", make will report error:
> ../qapi/misc.json:573:2: line should end with ':'
> 
> Signed-off-by: Zihao Chang <changzihao1@huawei.com>
> Message-Id: <20201201143308.1626-1-changzihao1@huawei.com>
> Reviewed-by: Eric Blake <eblake@redhat.com>
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> ---
>  docs/devel/writing-qmp-commands.txt | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/docs/devel/writing-qmp-commands.txt b/docs/devel/writing-qmp-commands.txt
> index 46a6c48683..28984686c9 100644
> --- a/docs/devel/writing-qmp-commands.txt
> +++ b/docs/devel/writing-qmp-commands.txt
> @@ -243,7 +243,7 @@ There are many examples of such documentation in the schema file already, but
>  here goes "hello-world"'s new entry for qapi/misc.json:
I follow the steps of hello world demo and find the problem, other entries seem to have the same
problem. Because I didn't test the other entries, I only modified hello world. Maybe I can test
them later.
>  
>  ##
> -# @hello-world
> +# @hello-world:
>  #
>  # Print a client provided string to the standard output stream.
>  #
> 


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2020-12-11  2:13 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-10 16:31 [PULL 00/13] Miscellaneous patches for 2020-12-10 Markus Armbruster
2020-12-10 16:31 ` [PULL 01/13] Clean up includes Markus Armbruster
2020-12-10 16:31 ` [PULL 02/13] qerror: Drop unused QERR_ macros Markus Armbruster
2020-12-10 16:31 ` [PULL 03/13] qerror: Eliminate QERR_ macros used in just one place Markus Armbruster
2020-12-10 16:31 ` [PULL 04/13] block: Improve some block-commit, block-stream error messages Markus Armbruster
2020-12-10 16:31 ` [PULL 05/13] ui: Improve some set_passwd, expire_password " Markus Armbruster
2020-12-10 16:31 ` [PULL 06/13] ui: Improve a client_migrate_info error message Markus Armbruster
2020-12-10 16:31 ` [PULL 07/13] ui: Tweak " Markus Armbruster
2020-12-10 16:31 ` [PULL 08/13] qga: Replace an unreachable error by abort() Markus Armbruster
2020-12-10 16:31 ` [PULL 09/13] qga: Tweak a guest-shutdown error message Markus Armbruster
2020-12-10 16:31 ` [PULL 10/13] qom: Improve {qom, device}-list-properties error messages Markus Armbruster
2020-12-10 16:31 ` [PULL 11/13] Tweak a few "Parameter 'NAME' expects THING" error message Markus Armbruster
2020-12-10 16:31 ` [PULL 12/13] qapi: Normalize version references x.y.0 to just x.y Markus Armbruster
2020-12-10 16:31 ` [PULL 13/13] docs/devel/writing-qmp-commands.txt: Fix docs Markus Armbruster
2020-12-11  2:11   ` Zihao Chang
2020-12-10 19:30 ` [PULL 00/13] Miscellaneous patches for 2020-12-10 Peter Maydell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).