On Wed, Jan 13, 2016 at 06:44:41PM +0100, Kevin Wolf wrote:
> Am 12.01.2016 um 19:56 hat Daniel P. Berrange geschrieben:
> > 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
> > 
> > Signed-off-by: Daniel P. Berrange <berra...@redhat.com>
> 
> Would it be worth adding assertions to the block layer I/O functions
> (most importantly, bdrv_aligned_preadv/pwritev) that this flag isn't
> set?

Yes, I think so.

In the read/write code paths that trigger encryption, I'm already doing
an assert that the encryption context is setup, which is indirectly
related to BDRV_O_NO_IO. It is probably worth adding an assertion
explicitly based on the flag at the top level though, as it'd give
a clearer error if it ever got triggered.

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

Reply via email to