[PATCH 3/5] conf: Introduce <metadata_cache> subelement of <disk><driver>
Peter Krempa
pkrempa at redhat.com
Fri Jan 8 13:26:25 UTC 2021
On Fri, Jan 08, 2021 at 13:13:30 +0000, Daniel Berrange wrote:
> On Thu, Jan 07, 2021 at 03:59:36PM +0100, Peter Krempa wrote:
> > In certain specific cases it might be beneficial to be able to control
> > the metadata caching of storage image format drivers of a hypervisor.
> >
> > Introduce XML machinery to set the maximum size of the metadata cache
> > which will be used by qemu's qcow2 driver.
> >
> > Signed-off-by: Peter Krempa <pkrempa at redhat.com>
> > ---
> > docs/formatdomain.rst | 43 ++++++++++++++
> > docs/schemas/domaincommon.rng | 20 ++++++-
> > src/conf/domain_conf.c | 51 ++++++++++++++--
> > src/util/virstoragefile.c | 1 +
> > src/util/virstoragefile.h | 2 +
> > .../qemuxml2argvdata/disk-metadata-cache.xml | 46 +++++++++++++++
> > .../disk-metadata-cache.x86_64-latest.xml | 58 +++++++++++++++++++
> > tests/qemuxml2xmltest.c | 1 +
> > 8 files changed, 216 insertions(+), 6 deletions(-)
> > create mode 100644 tests/qemuxml2argvdata/disk-metadata-cache.xml
> > create mode 100644 tests/qemuxml2xmloutdata/disk-metadata-cache.x86_64-latest.xml
>
>
> > + <disk type='file' device='disk'>
> > + <driver name='qemu' type='qcow2' cache='none'/>
> > + <source file='/tmp/QEMUGuest2.img'/>
> > + <backingStore type='file'>
> > + <format type='qcow2'>
> > + <metadata_cache>
> > + <max_size unit='kiB'>1024</max_size>
> > + </metadata_cache>
>
> I only wonder if this is uneccessarily verbose XML nesting ?
I actually had the same feeling, but adding it just as an attribute to
<disk><driver ... >(the other case besides <backingStore> felt worse
since we have a huge list of attributes there.
I specifically want that it points to metadata cache maximum size so
that there isn't any unnecessary ambiguity.
Possibilities are to merge the <max_size> subelement into the parent
element so that we decrease the amount of lines. Or possibly go with
Jano's suggestion of dropping 'size' since that is obvious when unit=''
is present (but note that unit is optional on input).
More information about the libvir-list
mailing list