diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2017-03-08 09:47:52 +0000 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2017-03-08 09:47:52 +0000 |
commit | b64842dee42d6b24d51283e4722140b73be1e222 (patch) | |
tree | bf3bc697e005203002392d691784c34813a17cf5 /qapi | |
parent | 87467097f8811258cd91d42c141a7bd8492ed08a (diff) | |
parent | b69f00dde490e88d55f5ee731545e690b2dc61f8 (diff) |
Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging
Block layer fixes for 2.9.0-rc0
# gpg: Signature made Tue 07 Mar 2017 14:59:18 GMT
# gpg: using RSA key 0x7F09B272C88F2FD6
# gpg: Good signature from "Kevin Wolf <kwolf@redhat.com>"
# Primary key fingerprint: DC3D EB15 9A9A F95D 3D74 56FE 7F09 B272 C88F 2FD6
* remotes/kevin/tags/for-upstream: (27 commits)
commit: Don't use error_abort in commit_start
block: Don't use error_abort in blk_new_open
sheepdog: Support blockdev-add
qapi-schema: Rename SocketAddressFlat's variant tcp to inet
qapi-schema: Rename GlusterServer to SocketAddressFlat
gluster: Plug memory leaks in qemu_gluster_parse_json()
gluster: Don't duplicate qapi-util.c's qapi_enum_parse()
gluster: Drop assumptions on SocketTransport names
sheepdog: Implement bdrv_parse_filename()
sheepdog: Use SocketAddress and socket_connect()
sheepdog: Report errors in pseudo-filename more usefully
sheepdog: Don't truncate long VDI name in _open(), _create()
sheepdog: Fix snapshot ID parsing in _open(), _create, _goto()
sheepdog: Mark sd_snapshot_delete() lossage FIXME
sheepdog: Fix error handling sd_create()
sheepdog: Fix error handling in sd_snapshot_delete()
sheepdog: Defuse time bomb in sd_open() error handling
block: Fix error handling in bdrv_replace_in_backing_chain()
block: Handle permission errors in change_parent_backing_link()
block: Ignore multiple children in bdrv_check_update_perm()
...
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'qapi')
-rw-r--r-- | qapi/block-core.json | 73 |
1 files changed, 25 insertions, 48 deletions
diff --git a/qapi/block-core.json b/qapi/block-core.json index bc0ccd615c..9bb7f4a17b 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -2124,6 +2124,7 @@ # @ssh: Since 2.8 # @iscsi: Since 2.9 # @rbd: Since 2.9 +# @sheepdog: Since 2.9 # # Since: 2.0 ## @@ -2132,8 +2133,8 @@ 'dmg', 'file', 'ftp', 'ftps', 'gluster', 'host_cdrom', 'host_device', 'http', 'https', 'iscsi', 'luks', 'nbd', 'nfs', 'null-aio', 'null-co', 'parallels', 'qcow', 'qcow2', 'qed', - 'quorum', 'raw', 'rbd', 'replication', 'ssh', 'vdi', 'vhdx', 'vmdk', - 'vpc', 'vvfat' ] } + 'quorum', 'raw', 'rbd', 'replication', 'sheepdog', 'ssh', + 'vdi', 'vhdx', 'vmdk', 'vpc', 'vvfat' ] } ## # @BlockdevOptionsFile: @@ -2546,50 +2547,6 @@ '*read-pattern': 'QuorumReadPattern' } } ## -# @GlusterTransport: -# -# An enumeration of Gluster transport types -# -# @tcp: TCP - Transmission Control Protocol -# -# @unix: UNIX - Unix domain socket -# -# Since: 2.7 -## -{ 'enum': 'GlusterTransport', - 'data': [ 'unix', 'tcp' ] } - - -## -# @GlusterServer: -# -# Captures the address of a socket -# -# Details for connecting to a gluster server -# -# @type: Transport type used for gluster connection -# -# This is similar to SocketAddress, only distinction: -# -# 1. GlusterServer is a flat union, SocketAddress is a simple union. -# A flat union is nicer than simple because it avoids nesting -# (i.e. more {}) on the wire. -# -# 2. GlusterServer lacks case 'fd', since gluster doesn't let you -# pass in a file descriptor. -# -# GlusterServer is actually not Gluster-specific, its a -# compatibility evolved into an alternate for SocketAddress. -# -# Since: 2.7 -## -{ 'union': 'GlusterServer', - 'base': { 'type': 'GlusterTransport' }, - 'discriminator': 'type', - 'data': { 'unix': 'UnixSocketAddress', - 'tcp': 'InetSocketAddress' } } - -## # @BlockdevOptionsGluster: # # Driver specific block device options for Gluster @@ -2610,7 +2567,7 @@ { 'struct': 'BlockdevOptionsGluster', 'data': { 'volume': 'str', 'path': 'str', - 'server': ['GlusterServer'], + 'server': ['SocketAddressFlat'], '*debug': 'int', '*logfile': 'str' } } @@ -2736,6 +2693,26 @@ '*password-secret': 'str' } } ## +# @BlockdevOptionsSheepdog: +# +# Driver specific block device options for sheepdog +# +# @vdi: Virtual disk image name +# @addr: The Sheepdog server to connect to +# @snap-id: Snapshot ID +# @tag: Snapshot tag name +# +# Only one of @snap-id and @tag may be present. +# +# Since: 2.9 +## +{ 'struct': 'BlockdevOptionsSheepdog', + 'data': { 'addr': 'SocketAddressFlat', + 'vdi': 'str', + '*snap-id': 'uint32', + '*tag': 'str' } } + +## # @ReplicationMode: # # An enumeration of replication modes. @@ -2935,7 +2912,7 @@ 'raw': 'BlockdevOptionsRaw', 'rbd': 'BlockdevOptionsRbd', 'replication':'BlockdevOptionsReplication', -# TODO sheepdog: Wait for structured options + 'sheepdog': 'BlockdevOptionsSheepdog', 'ssh': 'BlockdevOptionsSsh', 'vdi': 'BlockdevOptionsGenericFormat', 'vhdx': 'BlockdevOptionsGenericFormat', |