[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC PATCH 0/6] block: Add driver specific options
From: |
Kevin Wolf |
Subject: |
[Qemu-devel] [RFC PATCH 0/6] block: Add driver specific options |
Date: |
Wed, 27 Feb 2013 18:25:49 +0100 |
Instead of constantly keeping complaining that we need this big -blockdev
things, let's start attacking individual parts of the project. Here is the
first part, allowing block drivers to provide additional -drive options.
Any options that isn't processed by the block layer is passed to the driver
which can use them. If it doesn't, you get an error message like today. At the
end of this series you can specify:
-drive file=test.qcow2,lazy_refcounts=on
This is still quite rough and more of a quick hack, but I'd like to get some
feedback on the general approach and for example if at least the user interface
is acceptable. I thought -drive already mixes so many things, messing a bit
more with it can't make things much worse, but you may disagree.
Before merging this, I'll look into using QemuOpts a bit more (the manual
parsing of the option in qcow2 definitely has to go away) and possibly allow
specifying options for backing files or the protocol as well with a syntax like
"backing.lazy_refcounts=on". If all options starts using this, maybe even
something like "backing.cache=writeback" could be made to work.
Kevin Wolf (6):
block: Add options QDict to .bdrv_open()
block: Add options QDict to bdrv_open() prototype
Add qdict_clone_shallow()
block: Add options QDict to bdrv_open_common()
block: Support driver specific options in drive_init()
qcow2: Allow lazy refcounts to be enabled on the command line
block.c | 73 +++++++++++++++++++++++++++++++++++++++--------
block/blkverify.c | 2 +-
block/bochs.c | 2 +-
block/cloop.c | 2 +-
block/cow.c | 2 +-
block/dmg.c | 2 +-
block/parallels.c | 2 +-
block/qcow.c | 2 +-
block/qcow2-cluster.c | 2 +-
block/qcow2.c | 26 +++++++++++++++--
block/qcow2.h | 1 +
block/qed.c | 4 +--
block/raw.c | 2 +-
block/vdi.c | 2 +-
block/vmdk.c | 4 +--
block/vpc.c | 2 +-
block/vvfat.c | 2 +-
blockdev.c | 63 +++++++++++++++++++++++++++++++++++-----
hw/xen_disk.c | 2 +-
include/block/block.h | 4 +--
include/block/block_int.h | 3 +-
include/qapi/qmp/qdict.h | 2 ++
qemu-img.c | 6 ++--
qemu-io.c | 2 +-
qemu-nbd.c | 2 +-
qobject/qdict.c | 22 ++++++++++++++
26 files changed, 191 insertions(+), 47 deletions(-)
--
1.8.1.2
- [Qemu-devel] [RFC PATCH 0/6] block: Add driver specific options,
Kevin Wolf <=
- [Qemu-devel] [RFC PATCH 3/6] Add qdict_clone_shallow(), Kevin Wolf, 2013/02/27
- [Qemu-devel] [RFC PATCH 2/6] block: Add options QDict to bdrv_open() prototype, Kevin Wolf, 2013/02/27
- [Qemu-devel] [RFC PATCH 1/6] block: Add options QDict to .bdrv_open(), Kevin Wolf, 2013/02/27
- [Qemu-devel] [RFC PATCH 5/6] block: Support driver specific options in drive_init(), Kevin Wolf, 2013/02/27
- [Qemu-devel] [RFC PATCH 6/6] qcow2: Allow lazy refcounts to be enabled on the command line, Kevin Wolf, 2013/02/27
- [Qemu-devel] [RFC PATCH 4/6] block: Add options QDict to bdrv_open_common(), Kevin Wolf, 2013/02/27