Skip to content

Commit

Permalink
Merge tag 'pull-qapi-2024-02-12' of https://repo.or.cz/qemu/armbru in…
Browse files Browse the repository at this point in the history
…to staging

QAPI patches patches for 2024-02-12

# -----BEGIN PGP SIGNATURE-----
#
# iQJGBAABCAAwFiEENUvIs9frKmtoZ05fOHC0AOuRhlMFAmXJ4PsSHGFybWJydUBy
# ZWRoYXQuY29tAAoJEDhwtADrkYZTDwsP/iEdmZmjoxMedTzec+GGl5QxfMkqLn14
# eX2jXtzLGZMjGMh4lvMaAdn0AJ3VnBOqxly14sMK6TMWGZkNKJpKF+2Cj8IKte1o
# MlpS1N/7rZxew+B9HkulhS+6UFB3Jndsflm2ot4g+rRjohJCw0v0GapEqjQg6CKp
# efJhiPuBSImm2MSx+n4dj8gkcFOMrgo6oc2ZpN0ypvGb4mupPpnNj6v12yZL8FUM
# Enwsk+pBLQWoYxI9MFDGc0gW9ZBlEdP/nVq/PbglD06Urc241AHGYqT7XLT0oHLl
# 6NA4v3N4GPdSe6oJdOHDFVR+/uPKiiyrseTdYTSGgAN8gcRtHam4WWhqSDIN3Afl
# y41A9ZKkW51TpdszQ6wCdrgbTH5z6K5vnwWfVTwIgdI0mrDcAGWnc2Yr7m6c3fS8
# /Vz00J7OC0P1nXh0IeRxXExXSmaGUUgS3T/KBXPYr0PQPe7Qd+1eTQN6LaliEMRH
# dRpXQabjLmztMhc5VXCv8ihwa7mNVaEn++uRrdKoWOvIQEp0ZeZfxCzp+/2mGPJ0
# YKJc7Ja260h2Y00/Zu2XiwjdzgG+h+QuJO/3OFsZIV5ftFqSBRMCHiGEfANHidld
# Cpo0efeWWTPdV8BQOirGGr0qtDTmgFMFCZTJMsI/g0m9sMCv0WbTtmWNThwaI3uD
# MKnEGG+KX7vD
# =nhrQ
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon 12 Feb 2024 09:12:27 GMT
# gpg:                using RSA key 354BC8B3D7EB2A6B68674E5F3870B400EB918653
# gpg:                issuer "armbru@redhat.com"
# gpg: Good signature from "Markus Armbruster <armbru@redhat.com>" [full]
# gpg:                 aka "Markus Armbruster <armbru@pond.sub.org>" [full]
# Primary key fingerprint: 354B C8B3 D7EB 2A6B 6867  4E5F 3870 B400 EB91 8653

* tag 'pull-qapi-2024-02-12' of https://repo.or.cz/qemu/armbru:
  MAINTAINERS: Cover qapi/stats.json
  MAINTAINERS: Cover qapi/cxl.json
  qapi/migration: Add missing tls-authz documentation
  qapi: Add missing union tag documentation
  qapi: Move @string out of common.json to discourage reuse
  qapi: Improve documentation of file descriptor socket addresses
  qapi: Plug trivial documentation holes around former simple unions
  qapi/dump: Clean up documentation of DumpGuestMemoryCapability
  qapi/yank: Clean up documentaion of yank
  qga/qapi-schema: Plug trivial documentation holes
  qga/qapi-schema: Clean up documentation of guest-set-vcpus
  qga/qapi-schema: Clean up documentation of guest-set-memory-blocks
  qapi: Require member documentation (with loophole)
  sphinx/qapidoc: Drop code to generate doc for simple union tag
  qapi: Indent tagged doc comment sections properly
  qapi/block-core: Fix BlockLatencyHistogramInfo doc markup
  docs/devel/qapi-code-gen: Tweak doc comment whitespace
  docs/devel/qapi-code-gen: Normalize version refs x.y.0 to just x.y

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
  • Loading branch information
pm215 committed Feb 13, 2024
2 parents 5005aed + 0afbba6 commit 61e7a0d
Show file tree
Hide file tree
Showing 31 changed files with 322 additions and 106 deletions.
2 changes: 2 additions & 0 deletions MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -2894,6 +2894,7 @@ S: Supported
F: hw/cxl/
F: hw/mem/cxl_type3.c
F: include/hw/cxl/
F: qapi/cxl.json

Dirty Bitmaps
M: Eric Blake <eblake@redhat.com>
Expand Down Expand Up @@ -3320,6 +3321,7 @@ Stats
S: Orphan
F: include/sysemu/stats.h
F: stats/
F: qapi/stats.json

Streams
M: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Expand Down
2 changes: 1 addition & 1 deletion chardev/char-socket.c
Original file line number Diff line number Diff line change
Expand Up @@ -1508,7 +1508,7 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend,
};
} else {
addr->type = SOCKET_ADDRESS_TYPE_FD;
addr->u.fd.data = g_new(String, 1);
addr->u.fd.data = g_new(FdSocketAddress, 1);
addr->u.fd.data->str = g_strdup(fd);
}
sock->addr = addr;
Expand Down
14 changes: 10 additions & 4 deletions docs/devel/qapi-code-gen.rst
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,7 @@ Syntax::
'*doc-required': BOOL,
'*command-name-exceptions': [ STRING, ... ],
'*command-returns-exceptions': [ STRING, ... ],
'*documentation-exceptions': [ STRING, ... ],
'*member-name-exceptions': [ STRING, ... ] } }

The pragma directive lets you control optional generator behavior.
Expand All @@ -183,6 +184,10 @@ may contain ``"_"`` instead of ``"-"``. Default is none.
Pragma 'command-returns-exceptions' takes a list of commands that may
violate the rules on permitted return types. Default is none.

Pragma 'documentation-exceptions' takes a list of types, commands, and
events whose members / arguments need not be documented. Default is
none.

Pragma 'member-name-exceptions' takes a list of types whose member
names may contain uppercase letters, and ``"_"`` instead of ``"-"``.
Default is none.
Expand Down Expand Up @@ -1019,11 +1024,11 @@ For example::
# @device: If the stats are for a virtual block device, the name
# corresponding to the virtual block device.
#
# @node-name: The node name of the device. (since 2.3)
# @node-name: The node name of the device. (Since 2.3)
#
# ... more members ...
#
# Since: 0.14.0
# Since: 0.14
##
{ 'struct': 'BlockStats',
'data': {'*device': 'str', '*node-name': 'str',
Expand All @@ -1035,11 +1040,12 @@ For example::
# Query the @BlockStats for all virtual block devices.
#
# @query-nodes: If true, the command will query all the block nodes
# ... explain, explain ... (since 2.3)
# ... explain, explain ...
# (Since 2.3)
#
# Returns: A list of @BlockStats for each virtual block devices.
#
# Since: 0.14.0
# Since: 0.14
#
# Example:
#
Expand Down
6 changes: 0 additions & 6 deletions docs/sphinx/qapidoc.py
Original file line number Diff line number Diff line change
Expand Up @@ -168,12 +168,6 @@ def _nodes_for_members(self, doc, what, base=None, variants=None):
# TODO drop fallbacks when undocumented members are outlawed
if section.text:
defn = section.text
elif (variants and variants.tag_member == section.member
and not section.member.type.doc_type()):
values = section.member.type.member_names()
defn = [nodes.Text('One of ')]
defn.extend(intersperse([nodes.literal('', v) for v in values],
nodes.Text(', ')))
else:
defn = [nodes.Text('Not documented')]

Expand Down
1 change: 1 addition & 0 deletions include/hw/virtio/vhost-vsock-common.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
#ifndef QEMU_VHOST_VSOCK_COMMON_H
#define QEMU_VHOST_VSOCK_COMMON_H

#include "qapi/qapi-types-common.h"
#include "hw/virtio/virtio.h"
#include "hw/virtio/vhost.h"
#include "qom/object.h"
Expand Down
2 changes: 1 addition & 1 deletion include/net/filter.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#ifndef QEMU_NET_FILTER_H
#define QEMU_NET_FILTER_H

#include "qapi/qapi-types-net.h"
#include "qapi/qapi-types-common.h"
#include "qemu/queue.h"
#include "qom/object.h"
#include "net/queue.h"
Expand Down
26 changes: 23 additions & 3 deletions qapi/block-core.json
Original file line number Diff line number Diff line change
Expand Up @@ -196,6 +196,8 @@
##
# @ImageInfoSpecificQCow2Wrapper:
#
# @data: image information specific to QCOW2
#
# Since: 1.7
##
{ 'struct': 'ImageInfoSpecificQCow2Wrapper',
Expand All @@ -204,6 +206,8 @@
##
# @ImageInfoSpecificVmdkWrapper:
#
# @data: image information specific to VMDK
#
# Since: 6.1
##
{ 'struct': 'ImageInfoSpecificVmdkWrapper',
Expand All @@ -212,6 +216,8 @@
##
# @ImageInfoSpecificLUKSWrapper:
#
# @data: image information specific to LUKS
#
# Since: 2.7
##
{ 'struct': 'ImageInfoSpecificLUKSWrapper',
Expand All @@ -223,6 +229,8 @@
##
# @ImageInfoSpecificRbdWrapper:
#
# @data: image information specific to RBD
#
# Since: 6.1
##
{ 'struct': 'ImageInfoSpecificRbdWrapper',
Expand All @@ -231,6 +239,8 @@
##
# @ImageInfoSpecificFileWrapper:
#
# @data: image information specific to files
#
# Since: 8.0
##
{ 'struct': 'ImageInfoSpecificFileWrapper',
Expand All @@ -242,6 +252,8 @@
# A discriminated record of image format specific information
# structures.
#
# @type: block driver name
#
# Since: 1.7
##
{ 'union': 'ImageInfoSpecific',
Expand Down Expand Up @@ -656,9 +668,7 @@
# @bins: list of io request counts corresponding to histogram
# intervals, one more element than @boundaries has. For the
# example above, @bins may be something like [3, 1, 5, 2], and
# corresponding histogram looks like:
#
# ::
# corresponding histogram looks like::
#
# 5| *
# 4| *
Expand Down Expand Up @@ -1094,6 +1104,8 @@
#
# Block driver specific statistics
#
# @driver: block driver name
#
# Since: 4.2
##
{ 'union': 'BlockStatsSpecific',
Expand Down Expand Up @@ -3467,6 +3479,8 @@
##
# @BlockdevQcowEncryption:
#
# @format: encryption format
#
# Since: 2.10
##
{ 'union': 'BlockdevQcowEncryption',
Expand Down Expand Up @@ -3501,6 +3515,8 @@
##
# @BlockdevQcow2Encryption:
#
# @format: encryption format
#
# Since: 2.10
##
{ 'union': 'BlockdevQcow2Encryption',
Expand Down Expand Up @@ -3651,6 +3667,8 @@
##
# @SshHostKeyCheck:
#
# @mode: How to check the host key
#
# Since: 2.12
##
{ 'union': 'SshHostKeyCheck',
Expand Down Expand Up @@ -4220,6 +4238,8 @@
##
# @RbdEncryptionCreateOptions:
#
# @format: Encryption format.
#
# Since: 6.1
##
{ 'union': 'RbdEncryptionCreateOptions',
Expand Down
2 changes: 2 additions & 0 deletions qapi/block-export.json
Original file line number Diff line number Diff line change
Expand Up @@ -346,6 +346,8 @@
# Describes a block export, i.e. how single node should be exported on
# an external interface.
#
# @type: Block export type
#
# @id: A unique identifier for the block export (across all export
# types)
#
Expand Down
28 changes: 28 additions & 0 deletions qapi/char.json
Original file line number Diff line number Diff line change
Expand Up @@ -498,6 +498,8 @@
##
# @ChardevFileWrapper:
#
# @data: Configuration info for file chardevs
#
# Since: 1.4
##
{ 'struct': 'ChardevFileWrapper',
Expand All @@ -506,6 +508,8 @@
##
# @ChardevHostdevWrapper:
#
# @data: Configuration info for device and pipe chardevs
#
# Since: 1.4
##
{ 'struct': 'ChardevHostdevWrapper',
Expand All @@ -514,6 +518,8 @@
##
# @ChardevSocketWrapper:
#
# @data: Configuration info for (stream) socket chardevs
#
# Since: 1.4
##
{ 'struct': 'ChardevSocketWrapper',
Expand All @@ -522,6 +528,8 @@
##
# @ChardevUdpWrapper:
#
# @data: Configuration info for datagram socket chardevs
#
# Since: 1.5
##
{ 'struct': 'ChardevUdpWrapper',
Expand All @@ -530,6 +538,8 @@
##
# @ChardevCommonWrapper:
#
# @data: Configuration shared across all chardev backends
#
# Since: 2.6
##
{ 'struct': 'ChardevCommonWrapper',
Expand All @@ -538,6 +548,8 @@
##
# @ChardevMuxWrapper:
#
# @data: Configuration info for mux chardevs
#
# Since: 1.5
##
{ 'struct': 'ChardevMuxWrapper',
Expand All @@ -546,6 +558,8 @@
##
# @ChardevStdioWrapper:
#
# @data: Configuration info for stdio chardevs
#
# Since: 1.5
##
{ 'struct': 'ChardevStdioWrapper',
Expand All @@ -554,6 +568,8 @@
##
# @ChardevSpiceChannelWrapper:
#
# @data: Configuration info for spice vm channel chardevs
#
# Since: 1.5
##
{ 'struct': 'ChardevSpiceChannelWrapper',
Expand All @@ -563,6 +579,8 @@
##
# @ChardevSpicePortWrapper:
#
# @data: Configuration info for spice port chardevs
#
# Since: 1.5
##
{ 'struct': 'ChardevSpicePortWrapper',
Expand All @@ -572,6 +590,8 @@
##
# @ChardevQemuVDAgentWrapper:
#
# @data: Configuration info for qemu vdagent implementation
#
# Since: 6.1
##
{ 'struct': 'ChardevQemuVDAgentWrapper',
Expand All @@ -581,6 +601,8 @@
##
# @ChardevDBusWrapper:
#
# @data: Configuration info for DBus chardevs
#
# Since: 7.0
##
{ 'struct': 'ChardevDBusWrapper',
Expand All @@ -590,6 +612,8 @@
##
# @ChardevVCWrapper:
#
# @data: Configuration info for virtual console chardevs
#
# Since: 1.5
##
{ 'struct': 'ChardevVCWrapper',
Expand All @@ -598,6 +622,8 @@
##
# @ChardevRingbufWrapper:
#
# @data: Configuration info for ring buffer chardevs
#
# Since: 1.5
##
{ 'struct': 'ChardevRingbufWrapper',
Expand All @@ -608,6 +634,8 @@
#
# Configuration info for the new chardev backend.
#
# @type: backend type
#
# Since: 1.4
##
{ 'union': 'ChardevBackend',
Expand Down
11 changes: 0 additions & 11 deletions qapi/common.json
Original file line number Diff line number Diff line change
Expand Up @@ -51,17 +51,6 @@
{ 'enum': 'OnOffSplit',
'data': [ 'on', 'off', 'split' ] }

##
# @String:
#
# A fat type wrapping 'str', to be embedded in lists.
#
# Since: 1.2
##
{ 'struct': 'String',
'data': {
'str': 'str' } }

##
# @StrOrNull:
#
Expand Down
2 changes: 2 additions & 0 deletions qapi/crypto.json
Original file line number Diff line number Diff line change
Expand Up @@ -654,6 +654,8 @@
# The options that are available for all asymmetric key algorithms
# when creating a new QCryptoAkCipher.
#
# @alg: encryption cipher algorithm
#
# Since: 7.1
##
{ 'union': 'QCryptoAkCipherOptions',
Expand Down
2 changes: 1 addition & 1 deletion qapi/dump.json
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@
##
# @DumpGuestMemoryCapability:
#
# A list of the available formats for dump-guest-memory
# @formats: the available formats for dump-guest-memory
#
# Since: 2.0
##
Expand Down

0 comments on commit 61e7a0d

Please sign in to comment.