qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v3 0/2] Report format specific info for LUKS blo


From: Max Reitz
Subject: Re: [Qemu-devel] [PATCH v3 0/2] Report format specific info for LUKS block driver
Date: Fri, 15 Jul 2016 15:17:24 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0

On 14.06.2016 18:24, Daniel P. Berrange wrote:
> This is a followup to:
> 
>   v1: https://lists.gnu.org/archive/html/qemu-devel/2016-06/msg01723.html
>   v2: https://lists.gnu.org/archive/html/qemu-devel/2016-06/msg03642.html
> 
> The 'qemu-img info' tool has ability to print format specific
> information, eg with qcow2 it reports two extra items:
> 
>   $ qemu-img info ~/VirtualMachines/demo.qcow2
>   image: /home/berrange/VirtualMachines/demo.qcow2
>   file format: qcow2
>   virtual size: 3.0G (3221225472 bytes)
>   disk size: 140K
>   cluster_size: 65536
>   Format specific information:
>       compat: 0.10
>       refcount bits: 16
> 
> 
> This is not currently wired up for the LUKS driver. This patch
> series adds that support so that we can report useful data about
> the LUKS volume such as the crypto algorithm choices, key slot
> usage and other volume metadata.
> 
> The first patch extends the crypto API to allow querying of the
> format specific metadata
> 
> The second patches extends the block API to allow the LUKS driver
> to report the format specific metadata.
> 
>     $ qemu-img info ~/VirtualMachines/demo.luks
>     image: /home/berrange/VirtualMachines/demo.luks
>     file format: luks
>     virtual size: 98M (102760448 bytes)
>     disk size: 100M
>     encrypted: yes
>     Format specific information:
>         ivgen alg: plain64
>         hash alg: sha1
>         cipher alg: aes-128
>         uuid: 6ddee74b-3a22-408c-8909-6789d4fa2594
>         cipher mode: xts
>         slots:
>             [0]:
>                 active: true
>                 iters: 572706
>                 key offset: 4096
>                 stripes: 4000
>             [1]:
>                 active: false
>                 key offset: 135168
>             [2]:
>                 active: false
>                 key offset: 266240
>             [3]:
>                 active: false
>                 key offset: 397312
>             [4]:
>                 active: false
>                 key offset: 528384
>             [5]:
>                 active: false
>                 key offset: 659456
>             [6]:
>                 active: false
>                 key offset: 790528
>             [7]:
>                 active: false
>                 key offset: 921600
>         payload offset: 2097152
>         master key iters: 142375
> 
> Technically most of the code changes here are in the crypto
> layer, rather than the block layer. I'm fine with both patches
> going through the block maintainer tree, or can submit a both
> patches myself as, for sake of simplicity of merge.
> 
> Changed in v3:
> 
>  - Do full struct copy instead of field-by-field copy (Max)
>  - Simplify handling of linked list pointers (Max)
>  - Use g_strndup with uuid to guarantee null termination (Max)
>  - Misc typos (Max)
> 
> Changed in v2:
> 
>  - Drop patches related to creating a text output visitor to
>    format the ImageInfoSpecific data. This will be continued
>    in a separate patch series
>  - Fix key offset to be in bytes instead of sectors
>  - Drop the duplicated ImageInfoSpecificLUKS type and just
>    directly use QCryptoBlockInfoLUKS type in block layer
>  - Skip reporting stripes/iters if keyslot is inactive
>  - Add missing QAPI schema docs
> 
> 
> 
> Daniel P. Berrange (2):
>   crypto: add support for querying parameters for block encryption
>   block: export LUKS specific data to qemu-img info
> 
>  block/crypto.c         | 49 ++++++++++++++++++++++++++++++++
>  crypto/block-luks.c    | 67 ++++++++++++++++++++++++++++++++++++++++++++
>  crypto/block.c         | 17 +++++++++++
>  crypto/blockpriv.h     |  4 +++
>  include/crypto/block.h | 16 +++++++++++
>  qapi/block-core.json   |  6 +++-
>  qapi/crypto.json       | 76 
> ++++++++++++++++++++++++++++++++++++++++++++++++++
>  7 files changed, 234 insertions(+), 1 deletion(-)

Thanks, I've applied the series to my block branch:

https://github.com/XanClic/qemu/commits/block

Max

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]