From 4f7be2806e672fa232e406ac5eec26789b9d5f85 Mon Sep 17 00:00:00 2001 From: Max Reitz Date: Sat, 24 Feb 2018 16:40:33 +0100 Subject: [PATCH] block: Deprecate "backing": "" We have a clear replacement, so let's deprecate it. Signed-off-by: Max Reitz Reviewed-by: Eric Blake Reviewed-by: Alberto Garcia Message-Id: <20180224154033.29559-8-mreitz@redhat.com> Signed-off-by: Eric Blake --- block.c | 4 ++++ qapi/block-core.json | 4 ++-- qemu-doc.texi | 7 +++++++ qemu-options.hx | 4 ++-- 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/block.c b/block.c index ab77ba0233..a2caadf0a0 100644 --- a/block.c +++ b/block.c @@ -2649,6 +2649,10 @@ static BlockDriverState *bdrv_open_inherit(const char *filename, if (qobject_to(QNull, qdict_get(options, "backing")) != NULL || (backing && *backing == '\0')) { + if (backing) { + warn_report("Use of \"backing\": \"\" is deprecated; " + "use \"backing\": null instead"); + } flags |= BDRV_O_NO_BACKING; qdict_del(options, "backing"); } diff --git a/qapi/block-core.json b/qapi/block-core.json index 5b0ad1a8b7..f374be4c11 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -1174,7 +1174,7 @@ # @overlay: reference to the existing block device that will become # the overlay of @node, as part of creating the snapshot. # It must not have a current backing file (this can be -# achieved by passing "backing": "" to blockdev-add). +# achieved by passing "backing": null to blockdev-add). # # Since: 2.5 ## @@ -1347,7 +1347,7 @@ # "node-name": "node1534", # "file": { "driver": "file", # "filename": "hd1.qcow2" }, -# "backing": "" } } +# "backing": null } } # # <- { "return": {} } # diff --git a/qemu-doc.texi b/qemu-doc.texi index f8da9b8135..89fa80518a 100644 --- a/qemu-doc.texi +++ b/qemu-doc.texi @@ -2789,6 +2789,13 @@ support page sizes < 4096 any longer. The ``xlnx-ep108'' machine has been replaced by the ``xlnx-zcu102'' machine. The ``xlnx-zcu102'' machine has the same features and capabilites in QEMU. +@section Block device options + +@subsection "backing": "" (since 2.12.0) + +In order to prevent QEMU from automatically opening an image's backing +chain, use ``"backing": null'' instead. + @node License @appendix License diff --git a/qemu-options.hx b/qemu-options.hx index 6113bce08a..74158e7493 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -743,8 +743,8 @@ Reference to or definition of the data source block driver node @item backing Reference to or definition of the backing file block device (default is taken -from the image file). It is allowed to pass an empty string here in order to -disable the default backing file. +from the image file). It is allowed to pass @code{null} here in order to disable +the default backing file. @item lazy-refcounts Whether to enable the lazy refcounts feature (on/off; default is taken from the