qemu/include
Benoît Canet 12d3ba821d qmp: Allow to change password on named block driver states.
Signed-off-by: Benoit Canet <benoit@irqsave.net>
Reviewed-by: Fam Zheng <famz@redhat.com>

There was two candidate ways to implement named node manipulation:

1)
{ 'command': 'block_passwd', 'data': {'*device': 'str',
                                      '*node-name': 'str', 'password': 'str'}
}

2)

{ 'command': 'block_passwd', 'data': {'device': 'str',
                                      '*device-is-node': 'bool',
                                      'password': 'str'} }

Luiz proposed 1 and says 2 was an abuse of the QMP interface and proposed to
rewrite the QMP block interface for 2.0.

Luiz does not like in 1 the fact that 2 fields are optional but one of them must
be specified leading to an abuse of the QMP semantic.

Kevin argumented that 2 what a clear abuse of the device field and would not be
practical when reading fast some log file because the user would read "device"
and think that a device is manipulated when it's in fact a node name.
Documentation of 1 make it pretty clear what to do for the user.

Kevin argued that all bs are node including devices ones so 2 does not make
sense.

Kevin also argued that rewriting the QMP block interface would not make disapear
the current one.

Kevin pushed the argument that making the QAPI generator compatible with the
semantic of the operation would need a rewrite that no one has done yet.

A vote has been done on the list to elect the version to use and 1 won.

For reference the complete thread is:
"[Qemu-devel] [PATCH V4 4/7] qmp: Allow to change password on names block driver
states."

Signed-off-by: Benoit Canet <benoit@irqsave.net>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2014-01-24 16:07:08 +01:00
..
block qmp: Allow to change password on named block driver states. 2014-01-24 16:07:08 +01:00
disas Add moxie disassembler 2013-03-23 14:25:41 +00:00
exec memory: syncronize kvm bitmap using bitmaps operations 2014-01-13 14:04:55 +01:00
fpu softfloat: Add support for ties-away rounding 2014-01-08 19:07:22 +00:00
hw Merge remote branch 'luiz/queue/qmp' into qmpq 2014-01-14 12:10:08 +10:00
migration migration: Move QEMU_VM_* defines to migration/migration.h 2014-01-13 12:39:48 +01:00
monitor readline: move readline to a generic location 2014-01-22 12:07:17 +01:00
net net: disallow to specify multicast MAC address 2013-11-08 17:32:34 +01:00
qapi qdict: Add qdict_array_split() 2014-01-22 12:07:17 +01:00
qemu qemu-option: Add qemu_config_parse_qdict() 2014-01-22 12:07:17 +01:00
qom qom: Do not register interface "types" in the type table and fix names 2013-12-24 17:27:17 +01:00
sysemu device_tree: qemu_fdt_setprop: Rename val_array arg 2013-12-20 01:58:12 +01:00
ui include: add missing config-host.h include 2013-12-16 10:12:20 +01:00
config.h janitor: move remaining public headers to include/ 2012-12-19 08:32:46 +01:00
elf.h tcg-s390: Use qemu_getauxval in query_facilities 2013-11-30 07:45:30 +13:00
glib-compat.h glib: add a compatibility interface for g_timeout_add_seconds 2013-03-25 13:10:40 -05:00
qemu-common.h qmp: add interface blockdev-snapshot-delete-internal-sync 2013-09-12 10:12:47 +02:00
qemu-io.h qemu-io: add command completion 2014-01-22 12:07:17 +01:00
trace.h build: some simplifications for "trace/Makefile.objs" 2013-01-12 18:42:51 +01:00