[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [PATCH] qcow2: Get the request alignment for encrypted
From: |
Daniel P . Berrangé |
Subject: |
Re: [Qemu-block] [PATCH] qcow2: Get the request alignment for encrypted images from QCryptoBlock |
Date: |
Tue, 16 Oct 2018 11:32:05 +0100 |
User-agent: |
Mutt/1.10.1 (2018-07-13) |
On Mon, Oct 15, 2018 at 06:38:14PM +0200, Max Reitz wrote:
> On 11.10.18 12:58, Alberto Garcia wrote:
> > This doesn't have any practical effect at the moment because the
> > values of BDRV_SECTOR_SIZE, QCRYPTO_BLOCK_LUKS_SECTOR_SIZE and
> > QCRYPTO_BLOCK_QCOW_SECTOR_SIZE are all the same (512 bytes), but
> > future encryption methods could have different requirements.
> >
> > Signed-off-by: Alberto Garcia <address@hidden>
> > ---
> > block/qcow2.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
>
> This breaks non-LUKS encryption:
>
> $ ./qemu-img create -f qcow2 -o encryption=on,encrypt.key-secret=secret
> --object secret,id=secret,data=foo foo.qcow2 64M
> Formatting 'foo.qcow2', fmt=qcow2 size=67108864 encryption=on
> encrypt.key-secret=secret cluster_size=65536 lazy_refcounts=off
> refcount_bits=16
> qemu-img: block.c:1248: bdrv_open_driver: Assertion
> `is_power_of_2(bs->bl.request_alignment)' failed.
> [1] 13589 abort (core dumped) ./qemu-img create -f qcow2 -o
> encryption=on,encrypt.key-secret=secret --objec
>
> (As seen in iotests 049, 087, 134, and 158.)
We failed to set sector size in the crypto backend when opening with
the NO_IO flag set. I just sent a fix for that. Feel free to queue it
as part of the block layer rather than waiting for my next crypto layer
pull request.
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|