* [PATCH v2 01/16] qga/qapi-schema: Tidy up documentation of guest-fsfreeze-status
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 02/16] qga/qapi-schema: Fix a misspelled reference Markus Armbruster
` (16 subsequent siblings)
17 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Delete "error state indicates", because it doesn't make sense.
I suspect it was an accident.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Konstantin Kostiuk <kkostiuk@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
qga/qapi-schema.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/qga/qapi-schema.json b/qga/qapi-schema.json
index 796434ed34..f349345116 100644
--- a/qga/qapi-schema.json
+++ b/qga/qapi-schema.json
@@ -420,7 +420,7 @@
##
# @guest-fsfreeze-status:
#
-# Get guest fsfreeze state. error state indicates
+# Get guest fsfreeze state.
#
# Returns: GuestFsfreezeStatus ("thawed", "frozen", etc., as defined below)
#
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* [PATCH v2 02/16] qga/qapi-schema: Fix a misspelled reference
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 01/16] qga/qapi-schema: Tidy up documentation of guest-fsfreeze-status Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 03/16] qapi: Fix misspelled references Markus Armbruster
` (15 subsequent siblings)
17 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Code returns a list of GuestNetworkInterface, documentation claims
GuestNetworkInfo, which doesn't exist. Fix the documentation.
Fixes: 3424fc9f16a1 (qemu-ga: add guest-network-get-interfaces command)
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
qga/qapi-schema.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/qga/qapi-schema.json b/qga/qapi-schema.json
index f349345116..bb9bac0655 100644
--- a/qga/qapi-schema.json
+++ b/qga/qapi-schema.json
@@ -722,7 +722,7 @@
# Get list of guest IP addresses, MAC addresses
# and netmasks.
#
-# Returns: List of GuestNetworkInfo on success.
+# Returns: List of GuestNetworkInterface on success.
#
# Since: 1.1
##
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* [PATCH v2 03/16] qapi: Fix misspelled references
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 01/16] qga/qapi-schema: Tidy up documentation of guest-fsfreeze-status Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 02/16] qga/qapi-schema: Fix a misspelled reference Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-25 7:17 ` Juan Quintela
2023-04-25 6:42 ` [PATCH v2 04/16] qapi: Fix up references to long gone error classes Markus Armbruster
` (14 subsequent siblings)
17 siblings, 1 reply; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
query-cpu-definitions returns a list of CpuDefinitionInfo, but
documentation claims CpuDefInfo, which doesn't exist.
query-migrate-capabilities returns a list of
MigrationCapabilityStatus, but documentation claims
MigrationCapabilitiesStatus, which doesn't exist.
balloon and query-balloon can fail with KVMMissingCap, but
documentation claims KvmMissingCap, which doesn't exist.
Fix the documentation.
Fixes: e4e31c6324af (qapi: add query-cpu-definitions command (v2))
Fixes: bbf6da32b5bd (Add migration capabilities)
Fixes: d72f326431e2 (qapi: Convert balloon)
Fixes: 96637bcdf9e0 (qapi: Convert query-balloon)
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
---
qapi/machine-target.json | 2 +-
qapi/machine.json | 4 ++--
qapi/migration.json | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/qapi/machine-target.json b/qapi/machine-target.json
index 2e267fa458..b94fbdb65e 100644
--- a/qapi/machine-target.json
+++ b/qapi/machine-target.json
@@ -331,7 +331,7 @@
#
# Return a list of supported virtual CPU definitions
#
-# Returns: a list of CpuDefInfo
+# Returns: a list of CpuDefinitionInfo
#
# Since: 1.2
##
diff --git a/qapi/machine.json b/qapi/machine.json
index 604b686e59..8c3c58c763 100644
--- a/qapi/machine.json
+++ b/qapi/machine.json
@@ -1029,7 +1029,7 @@
#
# Returns: - Nothing on success
# - If the balloon driver is enabled but not functional because the KVM
-# kernel module cannot support it, KvmMissingCap
+# kernel module cannot support it, KVMMissingCap
# - If no balloon device is present, DeviceNotActive
#
# Notes: This command just issues a request to the guest. When it returns,
@@ -1067,7 +1067,7 @@
#
# Returns: - @BalloonInfo on success
# - If the balloon driver is enabled but not functional because the KVM
-# kernel module cannot support it, KvmMissingCap
+# kernel module cannot support it, KVMMissingCap
# - If no balloon device is present, DeviceNotActive
#
# Since: 0.14
diff --git a/qapi/migration.json b/qapi/migration.json
index c84fa10e86..87c174dca2 100644
--- a/qapi/migration.json
+++ b/qapi/migration.json
@@ -531,7 +531,7 @@
#
# Returns information about the current migration capabilities status
#
-# Returns: @MigrationCapabilitiesStatus
+# Returns: @MigrationCapabilityStatus
#
# Since: 1.2
#
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* Re: [PATCH v2 03/16] qapi: Fix misspelled references
2023-04-25 6:42 ` [PATCH v2 03/16] qapi: Fix misspelled references Markus Armbruster
@ 2023-04-25 7:17 ` Juan Quintela
0 siblings, 0 replies; 30+ messages in thread
From: Juan Quintela @ 2023-04-25 7:17 UTC (permalink / raw)
To: Markus Armbruster
Cc: qemu-devel, michael.roth, eblake, kwolf, hreitz, pbonzini,
marcandre.lureau, arei.gonglei, pizhenwei, jsnow, vsementsov,
eduardo, marcel.apfelbaum, wangyanan55, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Markus Armbruster <armbru@redhat.com> wrote:
> query-cpu-definitions returns a list of CpuDefinitionInfo, but
> documentation claims CpuDefInfo, which doesn't exist.
>
> query-migrate-capabilities returns a list of
> MigrationCapabilityStatus, but documentation claims
> MigrationCapabilitiesStatus, which doesn't exist.
>
> balloon and query-balloon can fail with KVMMissingCap, but
> documentation claims KvmMissingCap, which doesn't exist.
>
> Fix the documentation.
>
> Fixes: e4e31c6324af (qapi: add query-cpu-definitions command (v2))
> Fixes: bbf6da32b5bd (Add migration capabilities)
> Fixes: d72f326431e2 (qapi: Convert balloon)
> Fixes: 96637bcdf9e0 (qapi: Convert query-balloon)
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
^ permalink raw reply [flat|nested] 30+ messages in thread
* [PATCH v2 04/16] qapi: Fix up references to long gone error classes
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
` (2 preceding siblings ...)
2023-04-25 6:42 ` [PATCH v2 03/16] qapi: Fix misspelled references Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 05/16] qapi/block-core: Clean up after removal of dirty bitmap @status Markus Armbruster
` (13 subsequent siblings)
17 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Commit de253f14912e88f4 (qmp: switch to the new error format on the
wire) removed most error classes. Several later commits mistakenly
mentioned them in documentation. Replace them by the actual error
class there.
Fixes: 44e3e053af56 (qmp: add interface blockdev-snapshot-delete-internal-sync)
Fixes: f323bc9e8b3b (qmp: add interface blockdev-snapshot-internal-sync)
Fixes: ba1c048a8f9c (qapi: Introduce add-fd, remove-fd, query-fdsets)
Fixes: ed61fc10e8c8 (QAPI: add command for live block commit, 'block-commit')
Fixes: e4c8f004c55d (qapi: convert sendkey)
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
qapi/block-core.json | 4 ++--
qapi/misc.json | 6 +++---
qapi/ui.json | 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/qapi/block-core.json b/qapi/block-core.json
index c05ad0c07e..75f7c62405 100644
--- a/qapi/block-core.json
+++ b/qapi/block-core.json
@@ -5784,7 +5784,7 @@
# - If any snapshot matching @name exists, or @name is empty,
# GenericError
# - If the format of the image used does not support it,
-# BlockFormatFeatureNotSupported
+# GenericError
#
# Since: 1.7
#
@@ -5820,7 +5820,7 @@
# - If @device is not a valid block device, GenericError
# - If snapshot not found, GenericError
# - If the format of the image used does not support it,
-# BlockFormatFeatureNotSupported
+# GenericError
# - If @id and @name are both not specified, GenericError
#
# Since: 1.7
diff --git a/qapi/misc.json b/qapi/misc.json
index 6ddd16ea28..7e278ca1eb 100644
--- a/qapi/misc.json
+++ b/qapi/misc.json
@@ -349,8 +349,8 @@
# @opaque: A free-form string that can be used to describe the fd.
#
# Returns: - @AddfdInfo on success
-# - If file descriptor was not received, FdNotSupplied
-# - If @fdset-id is a negative value, InvalidParameterValue
+# - If file descriptor was not received, GenericError
+# - If @fdset-id is a negative value, GenericError
#
# Notes: The list of fd sets is shared by all monitor connections.
#
@@ -379,7 +379,7 @@
# @fd: The file descriptor that is to be removed.
#
# Returns: - Nothing on success
-# - If @fdset-id or @fd is not found, FdNotFound
+# - If @fdset-id or @fd is not found, GenericError
#
# Since: 1.2
#
diff --git a/qapi/ui.json b/qapi/ui.json
index 98322342f7..25f9d731df 100644
--- a/qapi/ui.json
+++ b/qapi/ui.json
@@ -985,7 +985,7 @@
# to 100
#
# Returns: - Nothing on success
-# - If key is unknown or redundant, InvalidParameter
+# - If key is unknown or redundant, GenericError
#
# Since: 1.3
#
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* [PATCH v2 05/16] qapi/block-core: Clean up after removal of dirty bitmap @status
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
` (3 preceding siblings ...)
2023-04-25 6:42 ` [PATCH v2 04/16] qapi: Fix up references to long gone error classes Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 06/16] qapi: @foo should be used to reference, not ``foo`` Markus Armbruster
` (12 subsequent siblings)
17 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Commit 81cbfd50886 (block: remove dirty bitmaps 'status' field)
removed deprecated BlockDirtyInfo member @status. It neglected to
remove references to its enumeration values from the documentation of
its replacements. Do that now.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
---
qapi/block-core.json | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/qapi/block-core.json b/qapi/block-core.json
index 75f7c62405..eeb2ed3f16 100644
--- a/qapi/block-core.json
+++ b/qapi/block-core.json
@@ -582,11 +582,11 @@
# @granularity: granularity of the dirty bitmap in bytes (since 1.4)
#
# @recording: true if the bitmap is recording new writes from the guest.
-# Replaces ``active`` and ``disabled`` statuses. (since 4.0)
+# (since 4.0)
#
# @busy: true if the bitmap is in-use by some operation (NBD or jobs)
# and cannot be modified via QMP or used by another operation.
-# Replaces ``locked`` and ``frozen`` statuses. (since 4.0)
+# (since 4.0)
#
# @persistent: true if the bitmap was stored on disk, is scheduled to be stored
# on disk, or both. (since 4.0)
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* [PATCH v2 06/16] qapi: @foo should be used to reference, not ``foo``
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
` (4 preceding siblings ...)
2023-04-25 6:42 ` [PATCH v2 05/16] qapi/block-core: Clean up after removal of dirty bitmap @status Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 07/16] qapi: Tidy up examples Markus Armbruster
` (11 subsequent siblings)
17 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Documentation suggests @foo is merely shorthand for ``foo``. It's
not, it carries additional meaning: it's a reference to a QAPI schema
name.
Reword the documentation to spell that out.
Fix up the few ``foo`` that should be @foo.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
docs/devel/qapi-code-gen.rst | 8 +++++---
docs/interop/firmware.json | 6 +++---
qapi/qom.json | 2 +-
qapi/ui.json | 2 +-
4 files changed, 10 insertions(+), 8 deletions(-)
diff --git a/docs/devel/qapi-code-gen.rst b/docs/devel/qapi-code-gen.rst
index 23e7f2fb1c..23f9059db2 100644
--- a/docs/devel/qapi-code-gen.rst
+++ b/docs/devel/qapi-code-gen.rst
@@ -925,9 +925,11 @@ first character of the first line.
The usual ****strong****, *\*emphasized\** and ````literal```` markup
should be used. If you need a single literal ``*``, you will need to
-backslash-escape it. As an extension beyond the usual rST syntax, you
-can also use ``@foo`` to reference a name in the schema; this is rendered
-the same way as ````foo````.
+backslash-escape it.
+
+Use ``@foo`` to reference a name in the schema. This is an rST
+extension. It is rendered the same way as ````foo````, but carries
+additional meaning.
Example::
diff --git a/docs/interop/firmware.json b/docs/interop/firmware.json
index 56814f02b3..cc8f869186 100644
--- a/docs/interop/firmware.json
+++ b/docs/interop/firmware.json
@@ -258,7 +258,7 @@
#
# @mode: Describes how the firmware build handles code versus variable
# storage. If not present, it must be treated as if it was
-# configured with value ``split``. Since: 7.0.0
+# configured with value @split. Since: 7.0.0
#
# @executable: Identifies the firmware executable. The @mode
# indicates whether there will be an associated
@@ -267,13 +267,13 @@
# -drive if=none,id=pflash0,readonly=on,file=@executable.@filename,format=@executable.@format
# -machine pflash0=pflash0
# or equivalent -blockdev instead of -drive. When
-# @mode is ``combined`` the executable must be
+# @mode is @combined the executable must be
# cloned before use and configured with readonly=off.
# With QEMU versions older than 4.0, you have to use
# -drive if=pflash,unit=0,readonly=on,file=@executable.@filename,format=@executable.@format
#
# @nvram-template: Identifies the NVRAM template compatible with
-# @executable, when @mode is set to ``split``,
+# @executable, when @mode is set to @split,
# otherwise it should not be present.
# Management software instantiates an
# individual copy -- a specific NVRAM file -- from
diff --git a/qapi/qom.json b/qapi/qom.json
index a877b879b9..4fe7a93a75 100644
--- a/qapi/qom.json
+++ b/qapi/qom.json
@@ -637,7 +637,7 @@
#
# @discard-data: if true, the file contents can be destroyed when QEMU exits,
# to avoid unnecessarily flushing data to the backing file. Note
-# that ``discard-data`` is only an optimization, and QEMU might
+# that @discard-data is only an optimization, and QEMU might
# not discard file contents if it aborts unexpectedly or is
# terminated using SIGKILL. (default: false)
#
diff --git a/qapi/ui.json b/qapi/ui.json
index 25f9d731df..c383c11097 100644
--- a/qapi/ui.json
+++ b/qapi/ui.json
@@ -1247,7 +1247,7 @@
# available node on the host.
#
# @p2p: Whether to use peer-to-peer connections (accepted through
-# ``add_client``).
+# @add_client).
#
# @audiodev: Use the specified DBus audiodev to export audio.
#
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* [PATCH v2 07/16] qapi: Tidy up examples
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
` (5 preceding siblings ...)
2023-04-25 6:42 ` [PATCH v2 06/16] qapi: @foo should be used to reference, not ``foo`` Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-25 7:20 ` Juan Quintela
2023-04-25 6:42 ` [PATCH v2 08/16] qapi: Delete largely misleading "Stability Considerations" Markus Armbruster
` (10 subsequent siblings)
17 siblings, 1 reply; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
A few examples neglect to prefix QMP input with '->'. Fix that.
Two examples have extra space after '<-'. Delete it.
A few examples neglect to show output. Provide some. The example
output for query-vcpu-dirty-limit could use further improvement. Add
a TODO comment.
Use "Examples:" instead of "Example:" where multiple examples are
given.
One example section numbers its two examples. Not done elsewhere;
drop.
Another example section separates them with "or". Likewise.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
qapi/block-core.json | 14 ++++++--------
qapi/block.json | 2 +-
qapi/char.json | 4 ++--
qapi/machine.json | 7 ++++---
qapi/migration.json | 33 ++++++++++++++++++++++-----------
qapi/misc.json | 7 +++----
qapi/net.json | 4 +---
qapi/qdev.json | 2 +-
qapi/qom.json | 2 +-
qapi/replay.json | 3 +++
qapi/run-state.json | 5 ++---
qapi/ui.json | 2 +-
12 files changed, 47 insertions(+), 38 deletions(-)
diff --git a/qapi/block-core.json b/qapi/block-core.json
index eeb2ed3f16..a5a5007b28 100644
--- a/qapi/block-core.json
+++ b/qapi/block-core.json
@@ -4574,9 +4574,8 @@
#
# Since: 2.9
#
-# Example:
+# Examples:
#
-# 1.
# -> { "execute": "blockdev-add",
# "arguments": {
# "driver": "qcow2",
@@ -4589,7 +4588,6 @@
# }
# <- { "return": {} }
#
-# 2.
# -> { "execute": "blockdev-add",
# "arguments": {
# "driver": "qcow2",
@@ -5596,7 +5594,7 @@
#
# Since: 2.7
#
-# Example:
+# Examples:
#
# 1. Add a new node to a quorum
# -> { "execute": "blockdev-add",
@@ -5646,7 +5644,7 @@
#
# Since: 2.12
#
-# Example:
+# Examples:
#
# 1. Move a node into an IOThread
# -> { "execute": "x-blockdev-set-iothread",
@@ -5731,18 +5729,18 @@
#
# Since: 2.0
#
-# Example:
+# Examples:
#
# 1. Read operation
#
-# { "event": "QUORUM_REPORT_BAD",
+# <- { "event": "QUORUM_REPORT_BAD",
# "data": { "node-name": "node0", "sector-num": 345435, "sectors-count": 5,
# "type": "read" },
# "timestamp": { "seconds": 1344522075, "microseconds": 745528 } }
#
# 2. Flush operation
#
-# { "event": "QUORUM_REPORT_BAD",
+# <- { "event": "QUORUM_REPORT_BAD",
# "data": { "node-name": "node0", "sector-num": 0, "sectors-count": 2097120,
# "type": "flush", "error": "Broken pipe" },
# "timestamp": { "seconds": 1456406829, "microseconds": 291763 } }
diff --git a/qapi/block.json b/qapi/block.json
index 5fe068f903..94339a1761 100644
--- a/qapi/block.json
+++ b/qapi/block.json
@@ -457,7 +457,7 @@
#
# Since: 1.1
#
-# Example:
+# Examples:
#
# -> { "execute": "block_set_io_throttle",
# "arguments": { "id": "virtio-blk-pci0/virtio-backend",
diff --git a/qapi/char.json b/qapi/char.json
index 923dc5056d..c9431dd0a7 100644
--- a/qapi/char.json
+++ b/qapi/char.json
@@ -637,7 +637,7 @@
#
# Since: 1.4
#
-# Example:
+# Examples:
#
# -> { "execute" : "chardev-add",
# "arguments" : { "id" : "foo",
@@ -673,7 +673,7 @@
#
# Since: 2.10
#
-# Example:
+# Examples:
#
# -> { "execute" : "chardev-change",
# "arguments" : { "id" : "baz",
diff --git a/qapi/machine.json b/qapi/machine.json
index 8c3c58c763..20541cb319 100644
--- a/qapi/machine.json
+++ b/qapi/machine.json
@@ -954,7 +954,7 @@
#
# Since: 2.7
#
-# Example:
+# Examples:
#
# For pseries machine type started with -smp 2,cores=2,maxcpus=4 -cpu POWER8:
#
@@ -1677,8 +1677,9 @@
# Since: 7.2
#
# Example:
-# {"execute": "dumpdtb"}
-# "arguments": { "filename": "fdt.dtb" } }
+# -> { "execute": "dumpdtb" }
+# "arguments": { "filename": "fdt.dtb" } }
+# <- { "return": {} }
#
##
{ 'command': 'dumpdtb',
diff --git a/qapi/migration.json b/qapi/migration.json
index 87c174dca2..477ee4d35b 100644
--- a/qapi/migration.json
+++ b/qapi/migration.json
@@ -273,7 +273,7 @@
#
# Since: 0.14
#
-# Example:
+# Examples:
#
# 1. Before the first migration
#
@@ -521,6 +521,7 @@
#
# -> { "execute": "migrate-set-capabilities" , "arguments":
# { "capabilities": [ { "capability": "xbzrle", "state": true } ] } }
+# <- { "return": {} }
#
##
{ 'command': 'migrate-set-capabilities',
@@ -989,6 +990,7 @@
#
# -> { "execute": "migrate-set-parameters" ,
# "arguments": { "compress-level": 1 } }
+# <- { "return": {} }
#
##
{ 'command': 'migrate-set-parameters', 'boxed': true,
@@ -1279,8 +1281,8 @@
#
# Example:
#
-# { "timestamp": {"seconds": 1449669631, "microseconds": 239225},
-# "event": "MIGRATION_PASS", "data": {"pass": 2} }
+# <- { "timestamp": {"seconds": 1449669631, "microseconds": 239225},
+# "event": "MIGRATION_PASS", "data": {"pass": 2} }
#
##
{ 'event': 'MIGRATION_PASS',
@@ -1861,8 +1863,9 @@
#
# Example:
#
-# {"execute": "calc-dirty-rate", "arguments": {"calc-time": 1,
-# 'sample-pages': 512} }
+# -> {"execute": "calc-dirty-rate", "arguments": {"calc-time": 1,
+# 'sample-pages': 512} }
+# <- { "return": {} }
#
##
{ 'command': 'calc-dirty-rate', 'data': {'calc-time': 'int64',
@@ -1914,9 +1917,11 @@
# Since: 7.1
#
# Example:
-# {"execute": "set-vcpu-dirty-limit"}
-# "arguments": { "dirty-rate": 200,
-# "cpu-index": 1 } }
+#
+# -> {"execute": "set-vcpu-dirty-limit"}
+# "arguments": { "dirty-rate": 200,
+# "cpu-index": 1 } }
+# <- { "return": {} }
#
##
{ 'command': 'set-vcpu-dirty-limit',
@@ -1937,8 +1942,10 @@
# Since: 7.1
#
# Example:
-# {"execute": "cancel-vcpu-dirty-limit"}
-# "arguments": { "cpu-index": 1 } }
+#
+# -> {"execute": "cancel-vcpu-dirty-limit"},
+# "arguments": { "cpu-index": 1 } }
+# <- { "return": {} }
#
##
{ 'command': 'cancel-vcpu-dirty-limit',
@@ -1952,7 +1959,11 @@
# Since: 7.1
#
# Example:
-# {"execute": "query-vcpu-dirty-limit"}
+#
+# -> {"execute": "query-vcpu-dirty-limit"}
+# <- {"return": [
+# { "limit-rate": 60, "current-rate": 3, "cpu-index": 0},
+# { "limit-rate": 60, "current-rate": 3, "cpu-index": 1}]}
#
##
{ 'command': 'query-vcpu-dirty-limit',
diff --git a/qapi/misc.json b/qapi/misc.json
index 7e278ca1eb..4afaee7fe7 100644
--- a/qapi/misc.json
+++ b/qapi/misc.json
@@ -580,10 +580,9 @@
#
# Example:
#
-# <- { "event": "RTC_CHANGE",
-# "data": { "offset": 78 },
-# "timestamp": { "seconds": 1267020223, "microseconds": 435656 } }
-#
+# <- { "event": "RTC_CHANGE",
+# "data": { "offset": 78 },
+# "timestamp": { "seconds": 1267020223, "microseconds": 435656 } }
##
{ 'event': 'RTC_CHANGE',
'data': { 'offset': 'int', 'qom-path': 'str' } }
diff --git a/qapi/net.json b/qapi/net.json
index d6eb30008b..1f1e148f01 100644
--- a/qapi/net.json
+++ b/qapi/net.json
@@ -914,7 +914,7 @@
#
# Since: 7.2
#
-# Example:
+# Examples:
#
# <- { "event": "NETDEV_STREAM_CONNECTED",
# "data": { "netdev-id": "netdev0",
@@ -922,8 +922,6 @@
# "host": "::1", "type": "inet" } },
# "timestamp": { "seconds": 1666269863, "microseconds": 311222 } }
#
-# or
-#
# <- { "event": "NETDEV_STREAM_CONNECTED",
# "data": { "netdev-id": "netdev0",
# "addr": { "path": "/tmp/qemu0", "type": "unix" } },
diff --git a/qapi/qdev.json b/qapi/qdev.json
index 2708fb4e99..f309facf8d 100644
--- a/qapi/qdev.json
+++ b/qapi/qdev.json
@@ -100,7 +100,7 @@
#
# Since: 0.14
#
-# Example:
+# Examples:
#
# -> { "execute": "device_del",
# "arguments": { "id": "net1" } }
diff --git a/qapi/qom.json b/qapi/qom.json
index 4fe7a93a75..2a3891e3cb 100644
--- a/qapi/qom.json
+++ b/qapi/qom.json
@@ -103,7 +103,7 @@
#
# Since: 1.2
#
-# Example:
+# Examples:
#
# 1. Use absolute path
#
diff --git a/qapi/replay.json b/qapi/replay.json
index 729470300d..fcbf10e237 100644
--- a/qapi/replay.json
+++ b/qapi/replay.json
@@ -81,6 +81,7 @@
# Example:
#
# -> { "execute": "replay-break", "arguments": { "icount": 220414 } }
+# <- { "return": {} }
#
##
{ 'command': 'replay-break', 'data': { 'icount': 'int' } }
@@ -96,6 +97,7 @@
# Example:
#
# -> { "execute": "replay-delete-break" }
+# <- { "return": {} }
#
##
{ 'command': 'replay-delete-break' }
@@ -117,5 +119,6 @@
# Example:
#
# -> { "execute": "replay-seek", "arguments": { "icount": 220414 } }
+# <- { "return": {} }
##
{ 'command': 'replay-seek', 'data': { 'icount': 'int' } }
diff --git a/qapi/run-state.json b/qapi/run-state.json
index 419c188dd1..bfc15ecad5 100644
--- a/qapi/run-state.json
+++ b/qapi/run-state.json
@@ -258,9 +258,8 @@
#
# Example:
#
-# <- { "event": "SUSPEND_DISK",
-# "timestamp": { "seconds": 1344456160, "microseconds": 309119 } }
-#
+# <- { "event": "SUSPEND_DISK",
+# "timestamp": { "seconds": 1344456160, "microseconds": 309119 } }
##
{ 'event': 'SUSPEND_DISK' }
diff --git a/qapi/ui.json b/qapi/ui.json
index c383c11097..e9599dea50 100644
--- a/qapi/ui.json
+++ b/qapi/ui.json
@@ -1153,7 +1153,7 @@
# so it is possible to map which console belongs to which device and
# display.
#
-# Example:
+# Examples:
#
# 1. Press left mouse button.
#
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* Re: [PATCH v2 07/16] qapi: Tidy up examples
2023-04-25 6:42 ` [PATCH v2 07/16] qapi: Tidy up examples Markus Armbruster
@ 2023-04-25 7:20 ` Juan Quintela
0 siblings, 0 replies; 30+ messages in thread
From: Juan Quintela @ 2023-04-25 7:20 UTC (permalink / raw)
To: Markus Armbruster
Cc: qemu-devel, michael.roth, eblake, kwolf, hreitz, pbonzini,
marcandre.lureau, arei.gonglei, pizhenwei, jsnow, vsementsov,
eduardo, marcel.apfelbaum, wangyanan55, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Markus Armbruster <armbru@redhat.com> wrote:
> A few examples neglect to prefix QMP input with '->'. Fix that.
>
> Two examples have extra space after '<-'. Delete it.
>
> A few examples neglect to show output. Provide some. The example
> output for query-vcpu-dirty-limit could use further improvement. Add
> a TODO comment.
>
> Use "Examples:" instead of "Example:" where multiple examples are
> given.
>
> One example section numbers its two examples. Not done elsewhere;
> drop.
>
> Another example section separates them with "or". Likewise.
>
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
^ permalink raw reply [flat|nested] 30+ messages in thread
* [PATCH v2 08/16] qapi: Delete largely misleading "Stability Considerations"
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
` (6 preceding siblings ...)
2023-04-25 6:42 ` [PATCH v2 07/16] qapi: Tidy up examples Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 09/16] qapi: Fix bullet list markup in documentation Markus Armbruster
` (9 subsequent siblings)
17 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Documentation section "Stability Considerations" dates back to the
early days of QMP (commit 82a56f0d83d (Monitor: Introduce the
qmp-commands.hx file)). It became largely misleading years ago.
Delete it.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
qapi/qapi-schema.json | 22 ----------------------
1 file changed, 22 deletions(-)
diff --git a/qapi/qapi-schema.json b/qapi/qapi-schema.json
index 7c09af5cc8..e57d8ff801 100644
--- a/qapi/qapi-schema.json
+++ b/qapi/qapi-schema.json
@@ -28,28 +28,6 @@
#
# Please, refer to the QMP specification (docs/interop/qmp-spec.txt) for
# detailed information on the Server command and response formats.
-#
-# = Stability Considerations
-#
-# The current QMP command set (described in this file) may be useful for a
-# number of use cases, however it's limited and several commands have bad
-# defined semantics, specially with regard to command completion.
-#
-# These problems are going to be solved incrementally in the next QEMU releases
-# and we're going to establish a deprecation policy for badly defined commands.
-#
-# If you're planning to adopt QMP, please observe the following:
-#
-# 1. The deprecation policy will take effect and be documented soon, please
-# check the documentation of each used command as soon as a new release of
-# QEMU is available
-#
-# 2. DO NOT rely on anything which is not explicit documented
-#
-# 3. Errors, in special, are not documented. Applications should NOT check
-# for specific errors classes or data (it's strongly recommended to only
-# check for the "error" key)
-#
##
{ 'include': 'pragma.json' }
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* [PATCH v2 09/16] qapi: Fix bullet list markup in documentation
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
` (7 preceding siblings ...)
2023-04-25 6:42 ` [PATCH v2 08/16] qapi: Delete largely misleading "Stability Considerations" Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-27 15:28 ` Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 10/16] qapi: Fix unintended definition lists " Markus Armbruster
` (8 subsequent siblings)
17 siblings, 1 reply; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Peter Maydell's commit 100cc4fe0f08 explains:
rST insists on a blank line before and after a bulleted list [...]
Add some extra blank lines in the doc comments so they're
acceptable rST input.
It missed one in qapi/trace.json.
Paolo Bonzini later added another instance in qapi/stats.json,
providing further, if unintended, evidence for his quip that rST is
the Perl of ASCII-based markups.
Both are parsed as ordinary paragraph, resulting in garbled output.
Add the blank lines we need to get the bullet lists recognized as
such.
Kevin Wolf and Lukas Straub added two more, but indented. Sphinx
recognizes them as (indented) bullet lists. The indentation looks
slightly off.
Insert a blank line and delete the extra indentation.
Fixes: 100cc4fe0f0827f8da1a5c05f9c65e2aaa40e03d (qapi: Add blank lines before bulleted lists)
Fixes: 467ef823d83e (qmp: add filtering of statistics by target vCPU)
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
qapi/block-export.json | 7 ++++---
qapi/stats.json | 1 +
qapi/trace.json | 1 +
qapi/yank.json | 21 +++++++++++----------
4 files changed, 17 insertions(+), 13 deletions(-)
diff --git a/qapi/block-export.json b/qapi/block-export.json
index 4627bbc4e6..3be3de357f 100644
--- a/qapi/block-export.json
+++ b/qapi/block-export.json
@@ -275,9 +275,10 @@
# @deprecated: This command is deprecated. Use @block-export-del instead.
#
# Returns: error if
-# - the server is not running
-# - export is not found
-# - mode is 'safe' and there are existing connections
+#
+# - the server is not running
+# - export is not found
+# - mode is 'safe' and there are existing connections
#
# Since: 2.12
##
diff --git a/qapi/stats.json b/qapi/stats.json
index 1f5d3c59ab..f17495ee65 100644
--- a/qapi/stats.json
+++ b/qapi/stats.json
@@ -107,6 +107,7 @@
# The arguments to the query-stats command; specifies a target for which to
# request statistics and optionally the required subset of information for
# that target:
+#
# - which vCPUs to request statistics for
# - which providers to request statistics from
# - which named values to return within each provider
diff --git a/qapi/trace.json b/qapi/trace.json
index 6c6982a587..f425d10764 100644
--- a/qapi/trace.json
+++ b/qapi/trace.json
@@ -87,6 +87,7 @@
# @vcpu: The vCPU to act upon (all by default; since 2.7).
#
# An event's state is modified if:
+#
# - its name matches the @name pattern, and
# - if @vcpu is given, the event has the "vcpu" property.
#
diff --git a/qapi/yank.json b/qapi/yank.json
index 167a775594..1639744ada 100644
--- a/qapi/yank.json
+++ b/qapi/yank.json
@@ -50,16 +50,17 @@
# hanging QEMU.
#
# Currently implemented yank instances:
-# - nbd block device:
-# Yanking it will shut down the connection to the nbd server without
-# attempting to reconnect.
-# - socket chardev:
-# Yanking it will shut down the connected socket.
-# - migration:
-# Yanking it will shut down all migration connections. Unlike
-# @migrate_cancel, it will not notify the migration process, so migration
-# will go into @failed state, instead of @cancelled state. @yank should be
-# used to recover from hangs.
+#
+# - nbd block device:
+# Yanking it will shut down the connection to the nbd server without
+# attempting to reconnect.
+# - socket chardev:
+# Yanking it will shut down the connected socket.
+# - migration:
+# Yanking it will shut down all migration connections. Unlike
+# @migrate_cancel, it will not notify the migration process, so migration
+# will go into @failed state, instead of @cancelled state. @yank should be
+# used to recover from hangs.
#
# Since: 6.0
##
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* Re: [PATCH v2 09/16] qapi: Fix bullet list markup in documentation
2023-04-25 6:42 ` [PATCH v2 09/16] qapi: Fix bullet list markup in documentation Markus Armbruster
@ 2023-04-27 15:28 ` Markus Armbruster
2023-04-27 15:44 ` Juan Quintela
0 siblings, 1 reply; 30+ messages in thread
From: Markus Armbruster @ 2023-04-27 15:28 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
I'm going to squash in the appended patch and add
John Snow missed the need for a blank line when converting
docs/devel/qapi-code-gen.txt to rST.
to the commit message.
diff --git a/docs/devel/qapi-code-gen.rst b/docs/devel/qapi-code-gen.rst
index d81aac7a19..ea0592034a 100644
--- a/docs/devel/qapi-code-gen.rst
+++ b/docs/devel/qapi-code-gen.rst
@@ -934,6 +934,7 @@ Example::
##
# Some text foo with **bold** and *emphasis*
+ #
# 1. with a list
# 2. like that
#
^ permalink raw reply related [flat|nested] 30+ messages in thread
* Re: [PATCH v2 09/16] qapi: Fix bullet list markup in documentation
2023-04-27 15:28 ` Markus Armbruster
@ 2023-04-27 15:44 ` Juan Quintela
0 siblings, 0 replies; 30+ messages in thread
From: Juan Quintela @ 2023-04-27 15:44 UTC (permalink / raw)
To: Markus Armbruster
Cc: qemu-devel, michael.roth, eblake, kwolf, hreitz, pbonzini,
marcandre.lureau, arei.gonglei, pizhenwei, jsnow, vsementsov,
eduardo, marcel.apfelbaum, wangyanan55, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Markus Armbruster <armbru@redhat.com> wrote:
> I'm going to squash in the appended patch and add
>
> John Snow missed the need for a blank line when converting
> docs/devel/qapi-code-gen.txt to rST.
>
> to the commit message.
Fine with me O:-)
> diff --git a/docs/devel/qapi-code-gen.rst b/docs/devel/qapi-code-gen.rst
> index d81aac7a19..ea0592034a 100644
> --- a/docs/devel/qapi-code-gen.rst
> +++ b/docs/devel/qapi-code-gen.rst
> @@ -934,6 +934,7 @@ Example::
>
> ##
> # Some text foo with **bold** and *emphasis*
> + #
> # 1. with a list
> # 2. like that
> #
^ permalink raw reply [flat|nested] 30+ messages in thread
* [PATCH v2 10/16] qapi: Fix unintended definition lists in documentation
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
` (8 preceding siblings ...)
2023-04-25 6:42 ` [PATCH v2 09/16] qapi: Fix bullet list markup in documentation Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 11/16] qga/qapi-schema: Fix member documentation markup Markus Armbruster
` (7 subsequent siblings)
17 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david,
Peter Maydell
rST parses something like
first line
second line
as a definition list item, where "first line" is the term being
defined by "second line".
This bites us in a couple of places. Here's one:
# @bps_max: total throughput limit during bursts,
# in bytes (Since 1.7)
scripts/qapi/parser.py parses this into an "argument section" with
name "bps_max" and text
total throughput limit during bursts,
in bytes (Since 1.7)
docs/sphinx/qapidoc.py duly passes the text to the rST parser, which
parses it as another definition list. Comes out as nested
definitions: term "bps_max: int (optional)" defined as term "total
throughput limit during bursts," defined as "in bytes (Since 1.7)".
rST truly is the Perl of ASCII-based markups.
Fix by deleting the extra indentation.
Fixes: 26ec4e53f2bf (qapi: Fix indent level on doc comments in json files)
Fixes: c0ac533b6f97 (qapi: Stop using whitespace for alignment in comments)
Fixes: 81ad2964e938 (net/vmnet: add vmnet backends to qapi/net)
Reported-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
---
qapi/block-core.json | 52 ++++++++++++++++++++++----------------------
qapi/control.json | 2 +-
qapi/machine.json | 4 ++--
qapi/net.json | 2 +-
4 files changed, 30 insertions(+), 30 deletions(-)
diff --git a/qapi/block-core.json b/qapi/block-core.json
index a5a5007b28..2382772e17 100644
--- a/qapi/block-core.json
+++ b/qapi/block-core.json
@@ -488,41 +488,41 @@
#
# @image: the info of image used (since: 1.6)
#
-# @bps_max: total throughput limit during bursts,
-# in bytes (Since 1.7)
+# @bps_max: total throughput limit during bursts, in bytes
+# (Since 1.7)
#
-# @bps_rd_max: read throughput limit during bursts,
-# in bytes (Since 1.7)
+# @bps_rd_max: read throughput limit during bursts, in bytes
+# (Since 1.7)
#
-# @bps_wr_max: write throughput limit during bursts,
-# in bytes (Since 1.7)
+# @bps_wr_max: write throughput limit during bursts, in bytes
+# (Since 1.7)
#
-# @iops_max: total I/O operations per second during bursts,
-# in bytes (Since 1.7)
+# @iops_max: total I/O operations per second during bursts, in bytes
+# (Since 1.7)
#
-# @iops_rd_max: read I/O operations per second during bursts,
-# in bytes (Since 1.7)
+# @iops_rd_max: read I/O operations per second during bursts, in bytes
+# (Since 1.7)
#
-# @iops_wr_max: write I/O operations per second during bursts,
-# in bytes (Since 1.7)
+# @iops_wr_max: write I/O operations per second during bursts, in
+# bytes (Since 1.7)
#
-# @bps_max_length: maximum length of the @bps_max burst
-# period, in seconds. (Since 2.6)
+# @bps_max_length: maximum length of the @bps_max burst period, in
+# seconds. (Since 2.6)
#
-# @bps_rd_max_length: maximum length of the @bps_rd_max
-# burst period, in seconds. (Since 2.6)
+# @bps_rd_max_length: maximum length of the @bps_rd_max burst period,
+# in seconds. (Since 2.6)
#
-# @bps_wr_max_length: maximum length of the @bps_wr_max
-# burst period, in seconds. (Since 2.6)
+# @bps_wr_max_length: maximum length of the @bps_wr_max burst period,
+# in seconds. (Since 2.6)
#
-# @iops_max_length: maximum length of the @iops burst
-# period, in seconds. (Since 2.6)
+# @iops_max_length: maximum length of the @iops burst period, in
+# seconds. (Since 2.6)
#
-# @iops_rd_max_length: maximum length of the @iops_rd_max
-# burst period, in seconds. (Since 2.6)
+# @iops_rd_max_length: maximum length of the @iops_rd_max burst
+# period, in seconds. (Since 2.6)
#
-# @iops_wr_max_length: maximum length of the @iops_wr_max
-# burst period, in seconds. (Since 2.6)
+# @iops_wr_max_length: maximum length of the @iops_wr_max burst
+# period, in seconds. (Since 2.6)
#
# @iops_size: an I/O size in bytes (Since 1.7)
#
@@ -948,7 +948,7 @@
# by the device (Since 4.2)
#
# @invalid_rd_operations: The number of invalid read operations
-# performed by the device (Since 2.5)
+# performed by the device (Since 2.5)
#
# @invalid_wr_operations: The number of invalid write operations
# performed by the device (Since 2.5)
@@ -3735,7 +3735,7 @@
# Driver specific block device options for Quorum
#
# @blkverify: true if the driver must print content mismatch
-# set to false by default
+# set to false by default
#
# @children: the children block devices to use
#
diff --git a/qapi/control.json b/qapi/control.json
index afca2043af..f83499280a 100644
--- a/qapi/control.json
+++ b/qapi/control.json
@@ -195,7 +195,7 @@
# @id: Name of the monitor
#
# @mode: Selects the monitor mode (default: readline in the system
-# emulator, control in qemu-storage-daemon)
+# emulator, control in qemu-storage-daemon)
#
# @pretty: Enables pretty printing (QMP only)
#
diff --git a/qapi/machine.json b/qapi/machine.json
index 20541cb319..1a90376f4e 100644
--- a/qapi/machine.json
+++ b/qapi/machine.json
@@ -457,7 +457,7 @@
# @nodeid: NUMA node ID (increase by 1 from 0 if omitted)
#
# @cpus: VCPUs belonging to this node (assign VCPUS round-robin
-# if omitted)
+# if omitted)
#
# @mem: memory size of this node; mutually exclusive with @memdev.
# Equally divide total memory among nodes if both @mem and @memdev are
@@ -690,7 +690,7 @@
# 5.2.27.5: Table 5-147 of ACPI 6.3 spec.
#
# @none: None (no memory side cache in this proximity domain,
-# or cache associativity unknown)
+# or cache associativity unknown)
#
# @direct: Direct Mapped
#
diff --git a/qapi/net.json b/qapi/net.json
index 1f1e148f01..ec66b39b70 100644
--- a/qapi/net.json
+++ b/qapi/net.json
@@ -533,7 +533,7 @@
# Must be specified along with @start-address and @subnet-mask.
#
# @subnet-mask: The IPv4 subnet mask to use on the interface. Must
-# be specified along with @start-address and @subnet-mask.
+# be specified along with @start-address and @subnet-mask.
#
# @isolated: Enable isolation for this interface. Interface isolation
# ensures that vmnet interface is not able to communicate
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* [PATCH v2 11/16] qga/qapi-schema: Fix member documentation markup
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
` (9 preceding siblings ...)
2023-04-25 6:42 ` [PATCH v2 10/16] qapi: Fix unintended definition lists " Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 12/16] qapi: Fix argument " Markus Armbruster
` (6 subsequent siblings)
17 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
GuestDiskStatsInfo's member documentation is parsed as ordinary text
due to missing colons. The generated documentation shows these
members as "Not documented".
The fix is obvious: add the missing colons.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
qga/qapi-schema.json | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/qga/qapi-schema.json b/qga/qapi-schema.json
index bb9bac0655..6a20eeb297 100644
--- a/qga/qapi-schema.json
+++ b/qga/qapi-schema.json
@@ -1553,11 +1553,11 @@
##
# @GuestDiskStatsInfo:
#
-# @name disk name
+# @name: disk name
#
-# @major major device number of disk
+# @major: major device number of disk
#
-# @minor minor device number of disk
+# @minor: minor device number of disk
##
{ 'struct': 'GuestDiskStatsInfo',
'data': {'name': 'str',
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* [PATCH v2 12/16] qapi: Fix argument documentation markup
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
` (10 preceding siblings ...)
2023-04-25 6:42 ` [PATCH v2 11/16] qga/qapi-schema: Fix member documentation markup Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 13/16] qapi: Replace ad hoc "since" documentation by member documentation Markus Armbruster
` (5 subsequent siblings)
17 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Member / argument documentation of BlockdevAmendOptionsQcow2,
job-resume, and RDMA_GID_STATUS_CHANGED is parsed as ordinary text due
to missing colon or space before the colon. The generated
documentation shows these members / arguments as "Not documented".
The fix is obvious: add missing colons, delete extra spaces.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
qapi/block-core.json | 2 +-
qapi/job.json | 2 +-
qapi/rdma.json | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/qapi/block-core.json b/qapi/block-core.json
index 2382772e17..9dd5ed9a47 100644
--- a/qapi/block-core.json
+++ b/qapi/block-core.json
@@ -5155,7 +5155,7 @@
# Driver specific image amend options for qcow2.
# For now, only encryption options can be amended
#
-# @encrypt Encryption options to be amended
+# @encrypt: Encryption options to be amended
#
# Since: 5.1
##
diff --git a/qapi/job.json b/qapi/job.json
index d5f84e9615..bc4104757a 100644
--- a/qapi/job.json
+++ b/qapi/job.json
@@ -148,7 +148,7 @@
# This command returns immediately after resuming a paused job. Resuming an
# already running job is an error.
#
-# @id : The job identifier.
+# @id: The job identifier.
#
# Since: 3.0
##
diff --git a/qapi/rdma.json b/qapi/rdma.json
index a1d2175a8b..5b6b66afa4 100644
--- a/qapi/rdma.json
+++ b/qapi/rdma.json
@@ -17,7 +17,7 @@
#
# @subnet-prefix: Subnet Prefix
#
-# @interface-id : Interface ID
+# @interface-id: Interface ID
#
# Since: 4.0
#
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* [PATCH v2 13/16] qapi: Replace ad hoc "since" documentation by member documentation
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
` (11 preceding siblings ...)
2023-04-25 6:42 ` [PATCH v2 12/16] qapi: Fix argument " Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 14/16] qapi: Fix misspelled section tags in doc comments Markus Armbruster
` (4 subsequent siblings)
17 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
MemoryDeviceInfoKind, NetClientDriver, and GuestPanicAction mention
some members only in ad hoc since documentation. The generated
documentation shows these members as "Not documented".
Replace by formal member documentation.
Add actual documentation text for the GuestPanicAction members, to
match existing member documentation there. For the others, merely
move existing "since" information.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
qapi/machine.json | 11 ++++++++---
qapi/net.json | 21 ++++++++-------------
qapi/run-state.json | 6 +++++-
3 files changed, 21 insertions(+), 17 deletions(-)
diff --git a/qapi/machine.json b/qapi/machine.json
index 1a90376f4e..5a18913767 100644
--- a/qapi/machine.json
+++ b/qapi/machine.json
@@ -1260,6 +1260,14 @@
##
# @MemoryDeviceInfoKind:
#
+# @nvdimm: since 2.12
+#
+# @virtio-pmem: since 4.1
+#
+# @virtio-mem: since 5.1
+#
+# @sgx-epc: since 6.2.
+#
# Since: 2.1
##
{ 'enum': 'MemoryDeviceInfoKind',
@@ -1302,9 +1310,6 @@
#
# Union containing information about a memory device
#
-# nvdimm is included since 2.12. virtio-pmem is included since 4.1.
-# virtio-mem is included since 5.1. sgx-epc is included since 6.2.
-#
# Since: 2.1
##
{ 'union': 'MemoryDeviceInfo',
diff --git a/qapi/net.json b/qapi/net.json
index ec66b39b70..3606d9d27f 100644
--- a/qapi/net.json
+++ b/qapi/net.json
@@ -641,14 +641,15 @@
#
# Available netdev drivers.
#
-# Since: 2.7
+# @l2tpv3: since 2.1
+# @vhost-vdpa: since 5.1
+# @vmnet-host: since 7.1
+# @vmnet-shared: since 7.1
+# @vmnet-bridged: since 7.1
+# @stream: since 7.2
+# @dgram: since 7.2
#
-# @vhost-vdpa since 5.1
-# @vmnet-host since 7.1
-# @vmnet-shared since 7.1
-# @vmnet-bridged since 7.1
-# @stream since 7.2
-# @dgram since 7.2
+# Since: 2.7
##
{ 'enum': 'NetClientDriver',
'data': [ 'none', 'nic', 'user', 'tap', 'l2tpv3', 'socket', 'stream',
@@ -669,12 +670,6 @@
#
# Since: 1.2
#
-# 'l2tpv3' - since 2.1
-# 'vmnet-host' - since 7.1
-# 'vmnet-shared' - since 7.1
-# 'vmnet-bridged' - since 7.1
-# 'stream' since 7.2
-# 'dgram' since 7.2
##
{ 'union': 'Netdev',
'base': { 'id': 'str', 'type': 'NetClientDriver' },
diff --git a/qapi/run-state.json b/qapi/run-state.json
index bfc15ecad5..e5f5d31395 100644
--- a/qapi/run-state.json
+++ b/qapi/run-state.json
@@ -467,7 +467,11 @@
#
# @pause: system pauses
#
-# Since: 2.1 (poweroff since 2.8, run since 5.0)
+# @poweroff: system powers off (since 2.8)
+#
+# @run: system continues to run (since 5.0)
+#
+# Since: 2.1
##
{ 'enum': 'GuestPanicAction',
'data': [ 'pause', 'poweroff', 'run' ] }
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* [PATCH v2 14/16] qapi: Fix misspelled section tags in doc comments
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
` (12 preceding siblings ...)
2023-04-25 6:42 ` [PATCH v2 13/16] qapi: Replace ad hoc "since" documentation by member documentation Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 15/16] qapi: Format since information the conventional way: (since X.Y) Markus Armbruster
` (3 subsequent siblings)
17 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Section tags are case sensitive and end with a colon. Screwing up
either gets them interpreted as ordinary paragraph. Fix a few.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
qapi/machine.json | 4 ++--
qapi/migration.json | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/qapi/machine.json b/qapi/machine.json
index 5a18913767..fcd69965e5 100644
--- a/qapi/machine.json
+++ b/qapi/machine.json
@@ -517,7 +517,7 @@
# @targets: Target root bridge IDs from -device ...,id=<ID> for each root
# bridge.
#
-# Since 7.1
+# Since: 7.1
##
{ 'struct': 'CXLFixedMemoryWindowOptions',
'data': {
@@ -532,7 +532,7 @@
#
# @cxl-fmw: List of CXLFixedMemoryWindowOptions
#
-# Since 7.1
+# Since: 7.1
##
{ 'struct' : 'CXLFMWProperties',
'data': { 'cxl-fmw': ['CXLFixedMemoryWindowOptions'] }
diff --git a/qapi/migration.json b/qapi/migration.json
index 477ee4d35b..1b6c7b19e4 100644
--- a/qapi/migration.json
+++ b/qapi/migration.json
@@ -1991,7 +1991,7 @@
#
# data: migration thread name
#
-# returns: information about migration threads
+# Returns: information about migration threads
#
# Since: 7.2
##
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* [PATCH v2 15/16] qapi: Format since information the conventional way: (since X.Y)
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
` (13 preceding siblings ...)
2023-04-25 6:42 ` [PATCH v2 14/16] qapi: Fix misspelled section tags in doc comments Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-25 6:42 ` [PATCH v2 16/16] qapi storage-daemon/qapi: Fix documentation section structure Markus Armbruster
` (2 subsequent siblings)
17 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
qapi/block-core.json | 6 +++---
qapi/stats.json | 2 +-
qapi/tpm.json | 3 +--
qapi/ui.json | 6 +++---
4 files changed, 8 insertions(+), 9 deletions(-)
diff --git a/qapi/block-core.json b/qapi/block-core.json
index 9dd5ed9a47..b57978957f 100644
--- a/qapi/block-core.json
+++ b/qapi/block-core.json
@@ -1318,10 +1318,10 @@
# value is monotonically increasing.
#
# @busy: false if the job is known to be in a quiescent state, with
-# no pending I/O. Since 1.3.
+# no pending I/O. (Since 1.3)
#
# @paused: whether the job is paused or, if @busy is true, will
-# pause itself as soon as possible. Since 1.3.
+# pause itself as soon as possible. (Since 1.3)
#
# @speed: the rate limit, bytes per second
#
@@ -2741,7 +2741,7 @@
#
# @on-error: the action to take on an error (default report).
# 'stop' and 'enospc' can only be used if the block device
-# supports io-status (see BlockInfo). Since 1.3.
+# supports io-status (see BlockInfo). (Since 1.3)
#
# @filter-node-name: the node name that should be assigned to the
# filter driver that the stream job inserts into the graph
diff --git a/qapi/stats.json b/qapi/stats.json
index f17495ee65..36d5f4dc94 100644
--- a/qapi/stats.json
+++ b/qapi/stats.json
@@ -69,7 +69,7 @@
#
# @vcpu: statistics that apply to a single virtual CPU.
#
-# @cryptodev: statistics that apply to a crypto device. since 8.0
+# @cryptodev: statistics that apply to a crypto device (since 8.0)
#
# Since: 7.1
##
diff --git a/qapi/tpm.json b/qapi/tpm.json
index 4e2ea9756a..eac87d30b2 100644
--- a/qapi/tpm.json
+++ b/qapi/tpm.json
@@ -44,8 +44,7 @@
# An enumeration of TPM types
#
# @passthrough: TPM passthrough type
-# @emulator: Software Emulator TPM type
-# Since: 2.11
+# @emulator: Software Emulator TPM type (since 2.11)
#
# Since: 1.5
##
diff --git a/qapi/ui.json b/qapi/ui.json
index e9599dea50..88de458ba9 100644
--- a/qapi/ui.json
+++ b/qapi/ui.json
@@ -1207,13 +1207,13 @@
# window resizes (virtio-gpu) this will default to "on",
# assuming the guest will resize the display to match
# the window size then. Otherwise it defaults to "off".
-# Since 3.1
+# (Since 3.1)
# @show-tabs: Display the tab bar for switching between the various graphical
# interfaces (e.g. VGA and virtual console character devices)
# by default.
-# Since 7.1
+# (Since 7.1)
# @show-menubar: Display the main window menubar. Defaults to "on".
-# Since 8.0
+# (Since 8.0)
#
# Since: 2.12
##
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* [PATCH v2 16/16] qapi storage-daemon/qapi: Fix documentation section structure
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
` (14 preceding siblings ...)
2023-04-25 6:42 ` [PATCH v2 15/16] qapi: Format since information the conventional way: (since X.Y) Markus Armbruster
@ 2023-04-25 6:42 ` Markus Armbruster
2023-04-27 9:53 ` [PATCH 17/16] docs/devel/qapi-code-gen: Describe some doc markup pitfalls Markus Armbruster
2023-04-27 9:53 ` Markus Armbruster
17 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-25 6:42 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
In the QEMU QMP Reference Manual, subsection "Block core (VM
unrelated)" is empty. Its contents is at the end of subsection
"Background jobs" instead. That's because qapi/job.json is included
first from qapi/block-core.json, which makes qapi/job.json's
documentation go between qapi/block-core.json's subsection heading and
contents.
In the QEMU Storage Daemon QMP Reference Manual, section "Block
Devices" contains nothing but an empty subsection "Block core (VM
unrelated)". The latter's contents is at the end section "Socket data
types", along with subsection "Block device exports". Subsection
"Background jobs" is at the end of section "Cryptography". All this
is because storage-daemon/qapi/qapi-schema.json includes modules in a
confused order.
Fix both as follows.
Turn subsection "Background jobs" into a section.
Move it before section "Block devices" in the QEMU QMP Reference
Manual, by including qapi/jobs.json right before qapi/block.json.
Reorder include directives in storage-daemon/qapi/qapi-schema.json to
match the order in qapi/qapi-schema.json, so that the QEMU Storage
Daemon QMP Reference Manual's section structure the QEMU QMP Reference
Manual's.
In the QEMU QMP Reference Manual, qapi/cryptodev.json's documentation
is at the end of section "Virtio devices". That's because it lacks a
section heading, and therefore gets squashed into whatever section
happens to precede it.
Add section heading so it's in section "Cryptography devices".
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Acked-by: zhenwei pi <pizhenwei@bytedance.com>
---
qapi/cryptodev.json | 4 ++++
qapi/job.json | 2 +-
qapi/qapi-schema.json | 2 +-
storage-daemon/qapi/qapi-schema.json | 22 +++++++++++++++-------
4 files changed, 21 insertions(+), 9 deletions(-)
diff --git a/qapi/cryptodev.json b/qapi/cryptodev.json
index f33f96a692..cf960ea81f 100644
--- a/qapi/cryptodev.json
+++ b/qapi/cryptodev.json
@@ -4,6 +4,10 @@
# This work is licensed under the terms of the GNU GPL, version 2 or later.
# See the COPYING file in the top-level directory.
+##
+# = Cryptography devices
+##
+
##
# @QCryptodevBackendAlgType:
#
diff --git a/qapi/job.json b/qapi/job.json
index bc4104757a..9e29a796c5 100644
--- a/qapi/job.json
+++ b/qapi/job.json
@@ -2,7 +2,7 @@
# vim: filetype=python
##
-# == Background jobs
+# = Background jobs
##
##
diff --git a/qapi/qapi-schema.json b/qapi/qapi-schema.json
index e57d8ff801..bb7217da26 100644
--- a/qapi/qapi-schema.json
+++ b/qapi/qapi-schema.json
@@ -43,11 +43,11 @@
{ 'include': 'sockets.json' }
{ 'include': 'run-state.json' }
{ 'include': 'crypto.json' }
+{ 'include': 'job.json' }
{ 'include': 'block.json' }
{ 'include': 'block-export.json' }
{ 'include': 'char.json' }
{ 'include': 'dump.json' }
-{ 'include': 'job.json' }
{ 'include': 'net.json' }
{ 'include': 'rdma.json' }
{ 'include': 'rocker.json' }
diff --git a/storage-daemon/qapi/qapi-schema.json b/storage-daemon/qapi/qapi-schema.json
index 67749d1101..f10c949490 100644
--- a/storage-daemon/qapi/qapi-schema.json
+++ b/storage-daemon/qapi/qapi-schema.json
@@ -15,18 +15,26 @@
{ 'include': '../../qapi/pragma.json' }
+# Documentation generated with qapi-gen.py is in source order, with
+# included sub-schemas inserted at the first include directive
+# (subsequent include directives have no effect). To get a sane and
+# stable order, it's best to include each sub-schema just once, or
+# include it first right here.
+
+{ 'include': '../../qapi/common.json' }
+{ 'include': '../../qapi/sockets.json' }
+{ 'include': '../../qapi/crypto.json' }
+{ 'include': '../../qapi/job.json' }
+
##
# = Block devices
##
{ 'include': '../../qapi/block-core.json' }
{ 'include': '../../qapi/block-export.json' }
+
{ 'include': '../../qapi/char.json' }
-{ 'include': '../../qapi/common.json' }
-{ 'include': '../../qapi/control.json' }
-{ 'include': '../../qapi/crypto.json' }
-{ 'include': '../../qapi/introspect.json' }
-{ 'include': '../../qapi/job.json' }
{ 'include': '../../qapi/authz.json' }
-{ 'include': '../../qapi/qom.json' }
-{ 'include': '../../qapi/sockets.json' }
{ 'include': '../../qapi/transaction.json' }
+{ 'include': '../../qapi/control.json' }
+{ 'include': '../../qapi/introspect.json' }
+{ 'include': '../../qapi/qom.json' }
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* [PATCH 17/16] docs/devel/qapi-code-gen: Describe some doc markup pitfalls
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
` (15 preceding siblings ...)
2023-04-25 6:42 ` [PATCH v2 16/16] qapi storage-daemon/qapi: Fix documentation section structure Markus Armbruster
@ 2023-04-27 9:53 ` Markus Armbruster
2023-04-27 11:09 ` Juan Quintela
2023-04-27 12:41 ` Vladimir Sementsov-Ogievskiy
2023-04-27 9:53 ` Markus Armbruster
17 siblings, 2 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-27 9:53 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Signed-off-by: Markus Armbruster <armbru@redhat.com>
---
docs/devel/qapi-code-gen.rst | 53 ++++++++++++++++++++++++++++++++++++
1 file changed, 53 insertions(+)
diff --git a/docs/devel/qapi-code-gen.rst b/docs/devel/qapi-code-gen.rst
index d81aac7a19..14983b074c 100644
--- a/docs/devel/qapi-code-gen.rst
+++ b/docs/devel/qapi-code-gen.rst
@@ -1059,6 +1059,59 @@ For example::
'returns': ['BlockStats'] }
+Markup pitfalls
+~~~~~~~~~~~~~~~
+
+A blank line is required between list items and paragraphs. Without
+it, the list may not be recognized, resulting in garbled output. Good
+example::
+
+ # An event's state is modified if:
+ #
+ # - its name matches the @name pattern, and
+ # - if @vcpu is given, the event has the "vcpu" property.
+
+Without the blank line this would be a single paragraph.
+
+Indentation matters. Bad example::
+
+ # @none: None (no memory side cache in this proximity domain,
+ # or cache associativity unknown)
+
+The description is parsed as a definition list with term "None (no
+memory side cache in this proximity domain," and definition "or cache
+associativity unknown)".
+
+Section tags are case-sensitive and end with a colon. Good example::
+
+ # Since: 7.1
+
+Bad examples (all ordinary paragraphs)::
+
+ # since: 7.1
+
+ # Since 7.1
+
+ # Since : 7.1
+
+Likewise, member descriptions require a colon. Good example::
+
+ # @interface-id: Interface ID
+
+Bad examples (all ordinary paragraphs)::
+
+ # @interface-id Interface ID
+
+ # @interface-id : Interface ID
+
+Undocumented members are not flagged, yet. Instead, the generated
+documentation describes them as "Not documented". Think twice before
+adding more undocumented members.
+
+When you change documentation comments, please check the generated
+documentation comes out as intended!
+
+
Client JSON Protocol introspection
==================================
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread
* Re: [PATCH 17/16] docs/devel/qapi-code-gen: Describe some doc markup pitfalls
2023-04-27 9:53 ` [PATCH 17/16] docs/devel/qapi-code-gen: Describe some doc markup pitfalls Markus Armbruster
@ 2023-04-27 11:09 ` Juan Quintela
2023-04-27 12:36 ` Markus Armbruster
2023-04-27 12:41 ` Vladimir Sementsov-Ogievskiy
1 sibling, 1 reply; 30+ messages in thread
From: Juan Quintela @ 2023-04-27 11:09 UTC (permalink / raw)
To: Markus Armbruster
Cc: qemu-devel, michael.roth, eblake, kwolf, hreitz, pbonzini,
marcandre.lureau, arei.gonglei, pizhenwei, jsnow, vsementsov,
eduardo, marcel.apfelbaum, wangyanan55, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Markus Armbruster <armbru@redhat.com> wrote:
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
> ---
> docs/devel/qapi-code-gen.rst | 53 ++++++++++++++++++++++++++++++++++++
> 1 file changed, 53 insertions(+)
>
> diff --git a/docs/devel/qapi-code-gen.rst b/docs/devel/qapi-code-gen.rst
> index d81aac7a19..14983b074c 100644
> --- a/docs/devel/qapi-code-gen.rst
> +++ b/docs/devel/qapi-code-gen.rst
> @@ -1059,6 +1059,59 @@ For example::
> 'returns': ['BlockStats'] }
>
>
> +Markup pitfalls
> +~~~~~~~~~~~~~~~
> +
> +A blank line is required between list items and paragraphs. Without
> +it, the list may not be recognized, resulting in garbled output. Good
> +example::
> +
> + # An event's state is modified if:
> + #
> + # - its name matches the @name pattern, and
> + # - if @vcpu is given, the event has the "vcpu" property.
> +
> +Without the blank line this would be a single paragraph.
> +
> +Indentation matters. Bad example::
> +
> + # @none: None (no memory side cache in this proximity domain,
> + # or cache associativity unknown)
> +
> +The description is parsed as a definition list with term "None (no
> +memory side cache in this proximity domain," and definition "or cache
> +associativity unknown)".
> +
> +Section tags are case-sensitive and end with a colon. Good example::
> +
> + # Since: 7.1
> +
> +Bad examples (all ordinary paragraphs)::
> +
> + # since: 7.1
> +
> + # Since 7.1
> +
> + # Since : 7.1
> +
> +Likewise, member descriptions require a colon. Good example::
> +
> + # @interface-id: Interface ID
> +
> +Bad examples (all ordinary paragraphs)::
> +
> + # @interface-id Interface ID
> +
> + # @interface-id : Interface ID
> +
> +Undocumented members are not flagged, yet. Instead, the generated
> +documentation describes them as "Not documented". Think twice before
> +adding more undocumented members.
> +
> +When you change documentation comments, please check the generated
> +documentation comes out as intended!
What is the easiest way to see the code generated for some subsystem,
say migration.json and find the problems and undocumented stuff?
I am expecting something in the lines of:
- you run this command
- and look at this file
Thanks, Juan.
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [PATCH 17/16] docs/devel/qapi-code-gen: Describe some doc markup pitfalls
2023-04-27 11:09 ` Juan Quintela
@ 2023-04-27 12:36 ` Markus Armbruster
0 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-27 12:36 UTC (permalink / raw)
To: Juan Quintela
Cc: qemu-devel, michael.roth, eblake, kwolf, hreitz, pbonzini,
marcandre.lureau, arei.gonglei, pizhenwei, jsnow, vsementsov,
eduardo, marcel.apfelbaum, wangyanan55, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Juan Quintela <quintela@redhat.com> writes:
> Markus Armbruster <armbru@redhat.com> wrote:
>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>
> Reviewed-by: Juan Quintela <quintela@redhat.com>
Thanks!
>> ---
>> docs/devel/qapi-code-gen.rst | 53 ++++++++++++++++++++++++++++++++++++
>> 1 file changed, 53 insertions(+)
>>
>> diff --git a/docs/devel/qapi-code-gen.rst b/docs/devel/qapi-code-gen.rst
>> index d81aac7a19..14983b074c 100644
>> --- a/docs/devel/qapi-code-gen.rst
>> +++ b/docs/devel/qapi-code-gen.rst
[...]
>> +When you change documentation comments, please check the generated
>> +documentation comes out as intended!
>
> What is the easiest way to see the code generated for some subsystem,
> say migration.json and find the problems and undocumented stuff?
>
> I am expecting something in the lines of:
> - you run this command
> - and look at this file
Make sure building documentation is enabled, run "make", and look at
bld-clang/docs/manual/interop/qemu-qmp-ref.html. Documentation for
qapi/migration.json is in section "Migration" (because
qapi/migration.json starts with a "# = Migration" heading).
Sphinx can produce a number of formats. Our build system only does HTML
and manual pages. I like to also produce plain text for easy diffing.
I grab the sphinx-build invocation from "make V=1" and replace "-b html"
by "-b text".
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [PATCH 17/16] docs/devel/qapi-code-gen: Describe some doc markup pitfalls
2023-04-27 9:53 ` [PATCH 17/16] docs/devel/qapi-code-gen: Describe some doc markup pitfalls Markus Armbruster
2023-04-27 11:09 ` Juan Quintela
@ 2023-04-27 12:41 ` Vladimir Sementsov-Ogievskiy
2023-04-27 13:47 ` Vladimir Sementsov-Ogievskiy
2023-04-28 9:34 ` Markus Armbruster
1 sibling, 2 replies; 30+ messages in thread
From: Vladimir Sementsov-Ogievskiy @ 2023-04-27 12:41 UTC (permalink / raw)
To: Markus Armbruster, qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, eduardo, marcel.apfelbaum,
wangyanan55, quintela, jasowang, yuval.shaia.ml, stefanha, kraxel,
kkostiuk, qemu-block, marcandre.lureau, david
On 27.04.23 12:53, Markus Armbruster wrote:
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> ---
> docs/devel/qapi-code-gen.rst | 53 ++++++++++++++++++++++++++++++++++++
> 1 file changed, 53 insertions(+)
>
> diff --git a/docs/devel/qapi-code-gen.rst b/docs/devel/qapi-code-gen.rst
> index d81aac7a19..14983b074c 100644
> --- a/docs/devel/qapi-code-gen.rst
> +++ b/docs/devel/qapi-code-gen.rst
> @@ -1059,6 +1059,59 @@ For example::
> 'returns': ['BlockStats'] }
>
>
> +Markup pitfalls
> +~~~~~~~~~~~~~~~
> +
> +A blank line is required between list items and paragraphs. Without
> +it, the list may not be recognized, resulting in garbled output. Good
> +example::
> +
> + # An event's state is modified if:
> + #
> + # - its name matches the @name pattern, and
> + # - if @vcpu is given, the event has the "vcpu" property.
> +
> +Without the blank line this would be a single paragraph.
> +
> +Indentation matters. Bad example::
> +
> + # @none: None (no memory side cache in this proximity domain,
> + # or cache associativity unknown)
> +
> +The description is parsed as a definition list with term "None (no
> +memory side cache in this proximity domain," and definition "or cache
> +associativity unknown)".
May be add good example of indentation as well
> +
> +Section tags are case-sensitive and end with a colon. Good example::
> +
> + # Since: 7.1
> +
> +Bad examples (all ordinary paragraphs)::
> +
> + # since: 7.1
> +
> + # Since 7.1
> +
> + # Since : 7.1
> +
> +Likewise, member descriptions require a colon. Good example::
> +
> + # @interface-id: Interface ID
> +
> +Bad examples (all ordinary paragraphs)::
> +
> + # @interface-id Interface ID
> +
> + # @interface-id : Interface ID
> +
> +Undocumented members are not flagged, yet. Instead, the generated
> +documentation describes them as "Not documented". Think twice before
> +adding more undocumented members.
> +
> +When you change documentation comments, please check the generated
> +documentation comes out as intended!
> +
> +
> Client JSON Protocol introspection
> ==================================
>
--
Best regards,
Vladimir
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [PATCH 17/16] docs/devel/qapi-code-gen: Describe some doc markup pitfalls
2023-04-27 12:41 ` Vladimir Sementsov-Ogievskiy
@ 2023-04-27 13:47 ` Vladimir Sementsov-Ogievskiy
2023-04-28 9:34 ` Markus Armbruster
1 sibling, 0 replies; 30+ messages in thread
From: Vladimir Sementsov-Ogievskiy @ 2023-04-27 13:47 UTC (permalink / raw)
To: Markus Armbruster, qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, eduardo, marcel.apfelbaum,
wangyanan55, quintela, jasowang, yuval.shaia.ml, stefanha, kraxel,
kkostiuk, qemu-block, marcandre.lureau, david
On 27.04.23 15:41, Vladimir Sementsov-Ogievskiy wrote:
> On 27.04.23 12:53, Markus Armbruster wrote:
>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>> ---
>> docs/devel/qapi-code-gen.rst | 53 ++++++++++++++++++++++++++++++++++++
>> 1 file changed, 53 insertions(+)
>>
>> diff --git a/docs/devel/qapi-code-gen.rst b/docs/devel/qapi-code-gen.rst
>> index d81aac7a19..14983b074c 100644
>> --- a/docs/devel/qapi-code-gen.rst
>> +++ b/docs/devel/qapi-code-gen.rst
>> @@ -1059,6 +1059,59 @@ For example::
>> 'returns': ['BlockStats'] }
>> +Markup pitfalls
>> +~~~~~~~~~~~~~~~
>> +
>> +A blank line is required between list items and paragraphs. Without
>> +it, the list may not be recognized, resulting in garbled output. Good
>> +example::
>> +
>> + # An event's state is modified if:
>> + #
>> + # - its name matches the @name pattern, and
>> + # - if @vcpu is given, the event has the "vcpu" property.
>> +
>> +Without the blank line this would be a single paragraph.
>> +
>> +Indentation matters. Bad example::
>> +
>> + # @none: None (no memory side cache in this proximity domain,
>> + # or cache associativity unknown)
>> +
>> +The description is parsed as a definition list with term "None (no
>> +memory side cache in this proximity domain," and definition "or cache
>> +associativity unknown)".
>
> May be add good example of indentation as well
anyway:
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
>
>> +
>> +Section tags are case-sensitive and end with a colon. Good example::
>> +
>> + # Since: 7.1
>> +
>> +Bad examples (all ordinary paragraphs)::
>> +
>> + # since: 7.1
>> +
>> + # Since 7.1
>> +
>> + # Since : 7.1
>> +
>> +Likewise, member descriptions require a colon. Good example::
>> +
>> + # @interface-id: Interface ID
>> +
>> +Bad examples (all ordinary paragraphs)::
>> +
>> + # @interface-id Interface ID
>> +
>> + # @interface-id : Interface ID
>> +
>> +Undocumented members are not flagged, yet. Instead, the generated
>> +documentation describes them as "Not documented". Think twice before
>> +adding more undocumented members.
>> +
>> +When you change documentation comments, please check the generated
>> +documentation comes out as intended!
>> +
>> +
>> Client JSON Protocol introspection
>> ==================================
>
--
Best regards,
Vladimir
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [PATCH 17/16] docs/devel/qapi-code-gen: Describe some doc markup pitfalls
2023-04-27 12:41 ` Vladimir Sementsov-Ogievskiy
2023-04-27 13:47 ` Vladimir Sementsov-Ogievskiy
@ 2023-04-28 9:34 ` Markus Armbruster
2023-04-28 9:44 ` Vladimir Sementsov-Ogievskiy
1 sibling, 1 reply; 30+ messages in thread
From: Markus Armbruster @ 2023-04-28 9:34 UTC (permalink / raw)
To: Vladimir Sementsov-Ogievskiy
Cc: qemu-devel, michael.roth, eblake, kwolf, hreitz, pbonzini,
marcandre.lureau, arei.gonglei, pizhenwei, jsnow, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru> writes:
> On 27.04.23 12:53, Markus Armbruster wrote:
>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>> ---
>> docs/devel/qapi-code-gen.rst | 53 ++++++++++++++++++++++++++++++++++++
>> 1 file changed, 53 insertions(+)
>> diff --git a/docs/devel/qapi-code-gen.rst b/docs/devel/qapi-code-gen.rst
>> index d81aac7a19..14983b074c 100644
>> --- a/docs/devel/qapi-code-gen.rst
>> +++ b/docs/devel/qapi-code-gen.rst
>> @@ -1059,6 +1059,59 @@ For example::
>> 'returns': ['BlockStats'] }
>> +Markup pitfalls
>> +~~~~~~~~~~~~~~~
>> +
>> +A blank line is required between list items and paragraphs. Without
>> +it, the list may not be recognized, resulting in garbled output. Good
>> +example::
>> +
>> + # An event's state is modified if:
>> + #
>> + # - its name matches the @name pattern, and
>> + # - if @vcpu is given, the event has the "vcpu" property.
>> +
>> +Without the blank line this would be a single paragraph.
>> +
>> +Indentation matters. Bad example::
>> +
>> + # @none: None (no memory side cache in this proximity domain,
>> + # or cache associativity unknown)
>> +
>> +The description is parsed as a definition list with term "None (no
>> +memory side cache in this proximity domain," and definition "or cache
>> +associativity unknown)".
>
> May be add good example of indentation as well
Patches I'm about to post will fill up this pitfall. They change the
text to:
# @none: None (no memory side cache in this proximity domain,
# or cache associativity unknown)
# (since 5.0)
The last line's de-indent is wrong. The second and subsequent lines
need to line up with each other, like this::
# @none: None (no memory side cache in this proximity domain,
# or cache associativity unknown)
# (since 5.0)
Good enough?
[...]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [PATCH 17/16] docs/devel/qapi-code-gen: Describe some doc markup pitfalls
2023-04-28 9:34 ` Markus Armbruster
@ 2023-04-28 9:44 ` Vladimir Sementsov-Ogievskiy
2023-04-28 10:27 ` Markus Armbruster
0 siblings, 1 reply; 30+ messages in thread
From: Vladimir Sementsov-Ogievskiy @ 2023-04-28 9:44 UTC (permalink / raw)
To: Markus Armbruster
Cc: qemu-devel, michael.roth, eblake, kwolf, hreitz, pbonzini,
marcandre.lureau, arei.gonglei, pizhenwei, jsnow, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
On 28.04.23 12:34, Markus Armbruster wrote:
> Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru> writes:
>
>> On 27.04.23 12:53, Markus Armbruster wrote:
>>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>>> ---
>>> docs/devel/qapi-code-gen.rst | 53 ++++++++++++++++++++++++++++++++++++
>>> 1 file changed, 53 insertions(+)
>>> diff --git a/docs/devel/qapi-code-gen.rst b/docs/devel/qapi-code-gen.rst
>>> index d81aac7a19..14983b074c 100644
>>> --- a/docs/devel/qapi-code-gen.rst
>>> +++ b/docs/devel/qapi-code-gen.rst
>>> @@ -1059,6 +1059,59 @@ For example::
>>> 'returns': ['BlockStats'] }
>>> +Markup pitfalls
>>> +~~~~~~~~~~~~~~~
>>> +
>>> +A blank line is required between list items and paragraphs. Without
>>> +it, the list may not be recognized, resulting in garbled output. Good
>>> +example::
>>> +
>>> + # An event's state is modified if:
>>> + #
>>> + # - its name matches the @name pattern, and
>>> + # - if @vcpu is given, the event has the "vcpu" property.
>>> +
>>> +Without the blank line this would be a single paragraph.
>>> +
>>> +Indentation matters. Bad example::
>>> +
>>> + # @none: None (no memory side cache in this proximity domain,
>>> + # or cache associativity unknown)
>>> +
>>> +The description is parsed as a definition list with term "None (no
>>> +memory side cache in this proximity domain," and definition "or cache
>>> +associativity unknown)".
>>
>> May be add good example of indentation as well
>
> Patches I'm about to post will fill up this pitfall. They change the
> text to:
>
> # @none: None (no memory side cache in this proximity domain,
> # or cache associativity unknown)
> # (since 5.0)
>
> The last line's de-indent is wrong. The second and subsequent lines
So you want to drop "The description is parsed as a definition list ..." ?
> need to line up with each other, like this::
>
> # @none: None (no memory side cache in this proximity domain,
> # or cache associativity unknown)
> # (since 5.0)
>
> Good enough?
Example of good indent is good)
--
Best regards,
Vladimir
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [PATCH 17/16] docs/devel/qapi-code-gen: Describe some doc markup pitfalls
2023-04-28 9:44 ` Vladimir Sementsov-Ogievskiy
@ 2023-04-28 10:27 ` Markus Armbruster
0 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-28 10:27 UTC (permalink / raw)
To: Vladimir Sementsov-Ogievskiy
Cc: qemu-devel, michael.roth, eblake, kwolf, hreitz, pbonzini,
marcandre.lureau, arei.gonglei, pizhenwei, jsnow, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru> writes:
> On 28.04.23 12:34, Markus Armbruster wrote:
>> Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru> writes:
>>
>>> On 27.04.23 12:53, Markus Armbruster wrote:
>>>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>>>> ---
>>>> docs/devel/qapi-code-gen.rst | 53 ++++++++++++++++++++++++++++++++++++
>>>> 1 file changed, 53 insertions(+)
>>>> diff --git a/docs/devel/qapi-code-gen.rst b/docs/devel/qapi-code-gen.rst
>>>> index d81aac7a19..14983b074c 100644
>>>> --- a/docs/devel/qapi-code-gen.rst
>>>> +++ b/docs/devel/qapi-code-gen.rst
>>>> @@ -1059,6 +1059,59 @@ For example::
>>>> 'returns': ['BlockStats'] }
>>>> +Markup pitfalls
>>>> +~~~~~~~~~~~~~~~
>>>> +
>>>> +A blank line is required between list items and paragraphs. Without
>>>> +it, the list may not be recognized, resulting in garbled output. Good
>>>> +example::
>>>> +
>>>> + # An event's state is modified if:
>>>> + #
>>>> + # - its name matches the @name pattern, and
>>>> + # - if @vcpu is given, the event has the "vcpu" property.
>>>> +
>>>> +Without the blank line this would be a single paragraph.
>>>> +
>>>> +Indentation matters. Bad example::
>>>> +
>>>> + # @none: None (no memory side cache in this proximity domain,
>>>> + # or cache associativity unknown)
>>>> +
>>>> +The description is parsed as a definition list with term "None (no
>>>> +memory side cache in this proximity domain," and definition "or cache
>>>> +associativity unknown)".
>>>
>>> May be add good example of indentation as well
>>
>> Patches I'm about to post will fill up this pitfall. They change the
>> text to:
>>
>> # @none: None (no memory side cache in this proximity domain,
>> # or cache associativity unknown)
>> # (since 5.0)
>> The last line's de-indent is wrong. The second and subsequent lines
>
> So you want to drop "The description is parsed as a definition list ..." ?
Yes, because that'll be factually wrong :)
Happy to explain further once the patches are on the list.
>> need to line up with each other, like this::
>>
>> # @none: None (no memory side cache in this proximity domain,
>> # or cache associativity unknown)
>> # (since 5.0)
>>
>> Good enough?
>
> Example of good indent is good)
Thanks!
^ permalink raw reply [flat|nested] 30+ messages in thread
* [PATCH 17/16] docs/devel/qapi-code-gen: Describe some doc markup pitfalls
2023-04-25 6:42 [PATCH v2 00/16] qapi qga/qapi-schema: Doc fixes Markus Armbruster
` (16 preceding siblings ...)
2023-04-27 9:53 ` [PATCH 17/16] docs/devel/qapi-code-gen: Describe some doc markup pitfalls Markus Armbruster
@ 2023-04-27 9:53 ` Markus Armbruster
17 siblings, 0 replies; 30+ messages in thread
From: Markus Armbruster @ 2023-04-27 9:53 UTC (permalink / raw)
To: qemu-devel
Cc: michael.roth, eblake, kwolf, hreitz, pbonzini, marcandre.lureau,
arei.gonglei, pizhenwei, jsnow, vsementsov, eduardo,
marcel.apfelbaum, wangyanan55, quintela, jasowang, yuval.shaia.ml,
stefanha, kraxel, kkostiuk, qemu-block, marcandre.lureau, david
Signed-off-by: Markus Armbruster <armbru@redhat.com>
---
docs/devel/qapi-code-gen.rst | 53 ++++++++++++++++++++++++++++++++++++
1 file changed, 53 insertions(+)
diff --git a/docs/devel/qapi-code-gen.rst b/docs/devel/qapi-code-gen.rst
index d81aac7a19..14983b074c 100644
--- a/docs/devel/qapi-code-gen.rst
+++ b/docs/devel/qapi-code-gen.rst
@@ -1059,6 +1059,59 @@ For example::
'returns': ['BlockStats'] }
+Markup pitfalls
+~~~~~~~~~~~~~~~
+
+A blank line is required between list items and paragraphs. Without
+it, the list may not be recognized, resulting in garbled output. Good
+example::
+
+ # An event's state is modified if:
+ #
+ # - its name matches the @name pattern, and
+ # - if @vcpu is given, the event has the "vcpu" property.
+
+Without the blank line this would be a single paragraph.
+
+Indentation matters. Bad example::
+
+ # @none: None (no memory side cache in this proximity domain,
+ # or cache associativity unknown)
+
+The description is parsed as a definition list with term "None (no
+memory side cache in this proximity domain," and definition "or cache
+associativity unknown)".
+
+Section tags are case-sensitive and end with a colon. Good example::
+
+ # Since: 7.1
+
+Bad examples (all ordinary paragraphs)::
+
+ # since: 7.1
+
+ # Since 7.1
+
+ # Since : 7.1
+
+Likewise, member descriptions require a colon. Good example::
+
+ # @interface-id: Interface ID
+
+Bad examples (all ordinary paragraphs)::
+
+ # @interface-id Interface ID
+
+ # @interface-id : Interface ID
+
+Undocumented members are not flagged, yet. Instead, the generated
+documentation describes them as "Not documented". Think twice before
+adding more undocumented members.
+
+When you change documentation comments, please check the generated
+documentation comes out as intended!
+
+
Client JSON Protocol introspection
==================================
--
2.39.2
^ permalink raw reply related [flat|nested] 30+ messages in thread