qemu-block
[Top][All Lists]
Advanced

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

Re: [Qemu-block] [PATCH v1 0/6] Report format specific info for LUKS blo


From: Max Reitz
Subject: Re: [Qemu-block] [PATCH v1 0/6] Report format specific info for LUKS block driver
Date: Tue, 14 Jun 2016 15:56:30 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1

On 07.06.2016 12:11, Daniel P. Berrange wrote:
> 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:
>         cipher-alg: aes-128
>         cipher-mode: xts
>         ivgen-alg: plain64
>         hash-alg: sha1
>         payload-offset: 2097152
>         master-key-iters: 142375
>         uuid: 6ddee74b-3a22-408c-8909-6789d4fa2594
>         slots:
>             [0]:
>                 active: true
>                 iters: 572706
>                 stripes: 4000
>                 key-offset: 8
>             [1]:
>                 active: false
>                 iters: 0
>                 stripes: 4000
>                 key-offset: 264
>             [2]:
>                 active: false
>                 iters: 0
>                 stripes: 4000
>                 key-offset: 520
>             [3]:
>                 active: false
>                 iters: 0
>                 stripes: 4000
>                 key-offset: 776
>             [4]:
>                 active: false
>                 iters: 0
>                 stripes: 4000
>                 key-offset: 1032
>             [5]:
>                 active: false
>                 iters: 0
>                 stripes: 4000
>                 key-offset: 1288
>             [6]:
>                 active: false
>                 iters: 0
>                 stripes: 4000
>                 key-offset: 1544
>             [7]:
>                 active: false
>                 iters: 0
>                 stripes: 4000
>                 key-offset: 1800
> 
> The remaining 4 patches are improvements to QAPI and the core
> block layer to fix a problem whereby struct fields are output
> in (apparently) random ordering. This is because the QAPI type
> is converted into a QObject for pretty-printing, thus throwing
> away any struct field ordering information.
> 
> To address this I created a new TextOutputVisitor which can
> directly pretty-print QAPI types. I then changed the code
> generator to create qapi_stringify_TYPENAME() methods for
> all QAPI types. Finally I changed the block layer over to
> use this stringify approach instead.

General nagging: This new approach no longer replaces dashes with spaces
in the key names. Is it worth doing something about this?

Max

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

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