From: "Daniel P. Berrange" <berrange@redhat.com>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Fam Zheng <famz@redhat.com>,
qemu-block@nongnu.org
Subject: [Qemu-devel] [PATCH v6 00/11] Add new LUKS block driver (for 2.6)
Date: Mon, 21 Mar 2016 14:11:41 +0000 [thread overview]
Message-ID: <1458569512-22970-1-git-send-email-berrange@redhat.com> (raw)
This series is just the block layer parts needed to add
a LUKS driver to QEMU. It was previously posted as part
of the larger series
v1: https://lists.gnu.org/archive/html/qemu-devel/2015-11/msg04748.html
v2: https://lists.gnu.org/archive/html/qemu-block/2016-01/msg00534.html
v3: https://lists.gnu.org/archive/html/qemu-devel/2016-02/msg03176.html
v4: https://lists.gnu.org/archive/html/qemu-devel/2016-02/msg06552.html
v5: https://lists.gnu.org/archive/html/qemu-devel/2016-03/msg04397.html
The crypto subsystem pieces that this series depends on have now
all been merged.
In this posting I am only proposing merge of the generic LUKS
driver. This can be added as a layer above any of the existing
drivers for accessing LUKS formatted volumes.
When creating new volumes, however, only the file backend can
be used, since the block driver API doesn't allow for arbitrary
stacking of protocols when creating images.
The integration with the qcow2 driver to replace the existing
built-in AES-CBC code is dropped from this series, postponed
until the 2.7 development cycle.
There is a QEMU I/O test 149 that exercises the LUKS driver
and checks for compatibility with the dm-crypt/cryptsetup
impl.
Changed in v6:
- Remove redundant mutex locking from I/O aths
- Rebased to resolve conflicts in qemu-img
- Switch to use blk_open where appropriate
- Add BDRV_O_CACHE_WB flag
- Avoid creating bounce buffer larger than iov size
- Add drv_truncate implementation
- Extend I/O test framework to support running with
luks driver for existing tests
- Split dm-crypt interop test into separate patch
- Don't prevent use of qcow2 AES encryption entirely,
just move location of warning message out of generic
block layer
Daniel P. Berrange (11):
block: add flag to indicate that no I/O will be performed
qemu-img/qemu-io: don't prompt for passwords if not required
tests: redirect stderr to stdout for iotests
tests: refactor python I/O tests helper main method
tests: add output filter to python I/O tests helper
block: add generic full disk encryption driver
block: move encryption deprecation warning into qcow code
block: add support for --image-opts in block I/O tests
block: add support for encryption secrets in block I/O tests
block: enable testing of LUKS driver with block I/O tests
block: an interoperability test for luks vs dm-crypt/cryptsetup
block.c | 17 +-
block/Makefile.objs | 2 +
block/crypto.c | 586 ++++++++++++
block/io.c | 2 +
block/qcow.c | 9 +
block/qcow2.c | 8 +
include/block/block.h | 2 +
qapi/block-core.json | 22 +-
qemu-img.c | 45 +-
qemu-io.c | 2 +-
tests/qemu-iotests/004 | 2 +-
tests/qemu-iotests/012 | 2 +-
tests/qemu-iotests/048 | 22 +-
tests/qemu-iotests/048.out | 6 +-
tests/qemu-iotests/049.out | 6 -
tests/qemu-iotests/052 | 4 +
tests/qemu-iotests/052.out | 4 +
tests/qemu-iotests/087 | 3 +-
tests/qemu-iotests/087.out | 26 +-
tests/qemu-iotests/100 | 7 +
tests/qemu-iotests/100.out | 14 +
tests/qemu-iotests/134.out | 18 -
tests/qemu-iotests/149 | 519 +++++++++++
tests/qemu-iotests/149.out | 1880 ++++++++++++++++++++++++++++++++++++++
tests/qemu-iotests/common | 16 +-
tests/qemu-iotests/common.config | 21 +-
tests/qemu-iotests/common.filter | 3 +-
tests/qemu-iotests/common.rc | 75 +-
tests/qemu-iotests/group | 1 +
tests/qemu-iotests/iotests.py | 48 +-
30 files changed, 3255 insertions(+), 117 deletions(-)
create mode 100644 block/crypto.c
create mode 100755 tests/qemu-iotests/149
create mode 100644 tests/qemu-iotests/149.out
--
2.5.0
next reply other threads:[~2016-03-21 14:12 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-21 14:11 Daniel P. Berrange [this message]
2016-03-21 14:11 ` [Qemu-devel] [PATCH v6 01/11] block: add flag to indicate that no I/O will be performed Daniel P. Berrange
2016-03-21 14:11 ` [Qemu-devel] [PATCH v6 02/11] qemu-img/qemu-io: don't prompt for passwords if not required Daniel P. Berrange
2016-03-21 14:11 ` [Qemu-devel] [PATCH v6 03/11] tests: redirect stderr to stdout for iotests Daniel P. Berrange
2016-03-21 14:11 ` [Qemu-devel] [PATCH v6 04/11] tests: refactor python I/O tests helper main method Daniel P. Berrange
2016-03-21 14:11 ` [Qemu-devel] [PATCH v6 05/11] tests: add output filter to python I/O tests helper Daniel P. Berrange
2016-03-21 14:11 ` [Qemu-devel] [PATCH v6 06/11] block: add generic full disk encryption driver Daniel P. Berrange
2016-03-21 14:11 ` [Qemu-devel] [PATCH v6 07/11] block: move encryption deprecation warning into qcow code Daniel P. Berrange
2016-03-21 20:04 ` Eric Blake
2016-03-21 14:11 ` [Qemu-devel] [PATCH v6 08/11] block: add support for --image-opts in block I/O tests Daniel P. Berrange
2016-03-21 20:08 ` Eric Blake
2016-03-22 10:36 ` Daniel P. Berrange
2016-03-24 21:59 ` [Qemu-devel] [Qemu-block] " Max Reitz
2016-03-21 14:11 ` [Qemu-devel] [PATCH v6 09/11] block: add support for encryption secrets " Daniel P. Berrange
2016-03-21 20:13 ` Eric Blake
2016-03-21 14:11 ` [Qemu-devel] [PATCH v6 10/11] block: enable testing of LUKS driver with " Daniel P. Berrange
2016-03-21 14:11 ` [Qemu-devel] [PATCH v6 11/11] block: an interoperability test for luks vs dm-crypt/cryptsetup Daniel P. Berrange
2016-03-21 16:50 ` [Qemu-devel] [PATCH v6 00/11] Add new LUKS block driver (for 2.6) Kevin Wolf
2016-03-21 16:53 ` Daniel P. Berrange
2016-03-23 13:53 ` Kevin Wolf
2016-03-29 9:13 ` [Qemu-devel] [Qemu-block] " Kevin Wolf
2016-03-29 9:15 ` Daniel P. Berrange
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1458569512-22970-1-git-send-email-berrange@redhat.com \
--to=berrange@redhat.com \
--cc=famz@redhat.com \
--cc=kwolf@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).