mirror of https://gitee.com/openkylin/qemu.git
block: Drop aio/cache consistency check from qmp_blockdev_add()
The TODO comment has been addressed a while ago and this is now checked in raw-posix, so we don't have to special case this in blockdev-add any more. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Max Reitz <mreitz@redhat.com>
This commit is contained in:
parent
24df38b00e
commit
0ffcdd9c06
15
blockdev.c
15
blockdev.c
|
@ -3832,21 +3832,6 @@ void qmp_blockdev_add(BlockdevOptions *options, Error **errp)
|
|||
QDict *qdict;
|
||||
Error *local_err = NULL;
|
||||
|
||||
/* TODO Sort it out in raw-posix and drive_new(): Reject aio=native with
|
||||
* cache.direct=false instead of silently switching to aio=threads, except
|
||||
* when called from drive_new().
|
||||
*
|
||||
* For now, simply forbidding the combination for all drivers will do. */
|
||||
if (options->has_aio && options->aio == BLOCKDEV_AIO_OPTIONS_NATIVE) {
|
||||
bool direct = options->has_cache &&
|
||||
options->cache->has_direct &&
|
||||
options->cache->direct;
|
||||
if (!direct) {
|
||||
error_setg(errp, "aio=native requires cache.direct=true");
|
||||
goto fail;
|
||||
}
|
||||
}
|
||||
|
||||
visit_type_BlockdevOptions(v, NULL, &options, &local_err);
|
||||
if (local_err) {
|
||||
error_propagate(errp, local_err);
|
||||
|
|
|
@ -27,7 +27,7 @@ QMP_VERSION
|
|||
Testing:
|
||||
QMP_VERSION
|
||||
{"return": {}}
|
||||
{"error": {"class": "GenericError", "desc": "aio=native requires cache.direct=true"}}
|
||||
{"error": {"class": "GenericError", "desc": "aio=native was specified, but it requires cache.direct=on, which was not specified."}}
|
||||
{"return": {}}
|
||||
{"timestamp": {"seconds": TIMESTAMP, "microseconds": TIMESTAMP}, "event": "SHUTDOWN"}
|
||||
|
||||
|
|
Loading…
Reference in New Issue