qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
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

             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).