block: add flag to indicate that no I/O will be performed
commitabb06c5ac1c86e747bbe08bf7b5b69723ad69832
authorDaniel P. Berrange <berrange@redhat.com>
Mon, 21 Mar 2016 14:11:42 +0000 (21 14:11 +0000)
committerKevin Wolf <kwolf@redhat.com>
Wed, 30 Mar 2016 09:59:32 +0000 (30 11:59 +0200)
tree227d67569c4069dbb356410cbf77e0544224bda8
parent543021569978c908fccff235bf90fc803e6fed1d
block: add flag to indicate that no I/O will be performed

When opening an image it is useful to know whether the caller
intends to perform I/O on the image or not. In the case of
encrypted images this will allow the block driver to avoid
having to prompt for decryption keys when we merely want to
query header metadata about the image. eg qemu-img info

This flag is enforced at the top level only, since even if
we don't want todo I/O on the 'qcow2' file payload, the
underlying 'file' driver will still need todo I/O to read
the qcow2 header, for example.

Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
block.c
block/io.c
include/block/block.h
qemu-img.c