[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 00/19] block: LUKS encryption slot management + iotest tweaks
From: |
Max Reitz |
Subject: |
[PATCH 00/19] block: LUKS encryption slot management + iotest tweaks |
Date: |
Thu, 25 Jun 2020 14:55:29 +0200 |
Hi,
This series collects all patches from Maxim’s series “LUKS: encryption
slot management using amend interface”, plus iotest patches that seem
useful to have before it. (And then I modified some of Maxim’s patches
to take advantage of those patches.)
Maxim’s series was here:
https://lists.nongnu.org/archive/html/qemu-block/2020-06/msg00330.html
I already posted patches 1 and 2 here:
https://lists.nongnu.org/archive/html/qemu-block/2020-06/msg00954.html
Change from the latter series:
- Patch 1:
- Use $SED instead of plain “sed” in one place I missed
- Older bash versions do not support readarray’s -d switch, so we have
to separate the Formatting line by a \n instead of \0.
Unfortunately, that means we cannot just split by \0 and be done
with it, but we have to ensure we put everything before the line
starting by “Formatting” into $filename_part, and we do that with a
loop that iterates over the split array until it finds the
“Formatting” line.
- Use multiple -e for grep instead of '(...|...|...)'
- Patch 2: Rebase fallout du to grep now using multiple -e parameters
git-backport-diff against Maxim’s series:
001/19:[down] 'iotests: Make _filter_img_create more active'
002/19:[0053] [FC] 'iotests: filter few more luks specific create options'
003/19:[down] 'iotests/common.rc: Add _require_working_luks'
004/19:[down] 'iotests.py: Add qemu_img_pipe_and_status()'
005/19:[down] 'iotests.py: Add (verify|has)_working_luks()'
006/19:[down] 'iotests: Check whether luks works'
007/19:[----] [--] 'qcrypto/core: add generic infrastructure for crypto options
amendment'
008/19:[----] [--] 'qcrypto/luks: implement encryption key management'
009/19:[----] [--] 'block/amend: add 'force' option'
010/19:[----] [--] 'block/amend: separate amend and create options for qemu-img'
011/19:[0268] [FC] 'block/amend: refactor qcow2 amend options'
012/19:[----] [--] 'block/crypto: rename two functions'
013/19:[----] [--] 'block/crypto: implement the encryption key management'
014/19:[----] [--] 'block/qcow2: extend qemu-img amend interface with crypto
options'
015/19:[0007] [FC] 'iotests: qemu-img tests for luks key management'
016/19:[----] [--] 'block/core: add generic infrastructure for x-blockdev-amend
qmp command'
017/19:[----] [--] 'block/crypto: implement blockdev-amend'
018/19:[----] [--] 'block/qcow2: implement blockdev-amend'
019/19:[0005] [FC] 'iotests: add tests for blockdev-amend'
git-backport-diff against “iotests: Make _filter_img_create more
active”:
Key:
[----] : patches are identical
[####] : number of functional differences between upstream/downstream patch
[down] : patch is downstream-only
The flags [FC] indicate (F)unctional and (C)ontextual differences, respectively
001/19:[0035] [FC] 'iotests: Make _filter_img_create more active'
002/19:[0004] [FC] 'iotests: filter few more luks specific create options'
003/19:[down] 'iotests/common.rc: Add _require_working_luks'
004/19:[down] 'iotests.py: Add qemu_img_pipe_and_status()'
005/19:[down] 'iotests.py: Add (verify|has)_working_luks()'
006/19:[down] 'iotests: Check whether luks works'
007/19:[down] 'qcrypto/core: add generic infrastructure for crypto options
amendment'
008/19:[down] 'qcrypto/luks: implement encryption key management'
009/19:[down] 'block/amend: add 'force' option'
010/19:[down] 'block/amend: separate amend and create options for qemu-img'
011/19:[down] 'block/amend: refactor qcow2 amend options'
012/19:[down] 'block/crypto: rename two functions'
013/19:[down] 'block/crypto: implement the encryption key management'
014/19:[down] 'block/qcow2: extend qemu-img amend interface with crypto options'
015/19:[down] 'iotests: qemu-img tests for luks key management'
016/19:[down] 'block/core: add generic infrastructure for x-blockdev-amend qmp
command'
017/19:[down] 'block/crypto: implement blockdev-amend'
018/19:[down] 'block/qcow2: implement blockdev-amend'
019/19:[down] 'iotests: add tests for blockdev-amend'
Max Reitz (5):
iotests: Make _filter_img_create more active
iotests/common.rc: Add _require_working_luks
iotests.py: Add qemu_img_pipe_and_status()
iotests.py: Add (verify|has)_working_luks()
iotests: Check whether luks works
Maxim Levitsky (14):
iotests: filter few more luks specific create options
qcrypto/core: add generic infrastructure for crypto options amendment
qcrypto/luks: implement encryption key management
block/amend: add 'force' option
block/amend: separate amend and create options for qemu-img
block/amend: refactor qcow2 amend options
block/crypto: rename two functions
block/crypto: implement the encryption key management
block/qcow2: extend qemu-img amend interface with crypto options
iotests: qemu-img tests for luks key management
block/core: add generic infrastructure for x-blockdev-amend qmp
command
block/crypto: implement blockdev-amend
block/qcow2: implement blockdev-amend
iotests: add tests for blockdev-amend
docs/tools/qemu-img.rst | 5 +-
qapi/block-core.json | 68 +++++
qapi/crypto.json | 73 +++++-
qapi/job.json | 4 +-
block/crypto.h | 37 +++
crypto/blockpriv.h | 8 +
include/block/block.h | 1 +
include/block/block_int.h | 24 +-
include/crypto/block.h | 22 ++
block.c | 4 +-
block/amend.c | 113 +++++++++
block/crypto.c | 206 +++++++++++++--
block/qcow2.c | 332 +++++++++++++-----------
crypto/block-luks.c | 416 ++++++++++++++++++++++++++++++-
crypto/block.c | 29 +++
qemu-img.c | 44 +++-
block/Makefile.objs | 2 +-
qemu-img-cmds.hx | 4 +-
tests/qemu-iotests/049.out | 102 ++++----
tests/qemu-iotests/061.out | 12 +-
tests/qemu-iotests/082.out | 185 ++++----------
tests/qemu-iotests/085.out | 38 +--
tests/qemu-iotests/087 | 1 +
tests/qemu-iotests/087.out | 6 +-
tests/qemu-iotests/112.out | 2 +-
tests/qemu-iotests/134.out | 2 +-
tests/qemu-iotests/141 | 2 +-
tests/qemu-iotests/144.out | 4 +-
tests/qemu-iotests/153 | 9 +-
tests/qemu-iotests/158.out | 4 +-
tests/qemu-iotests/178 | 1 +
tests/qemu-iotests/182.out | 2 +-
tests/qemu-iotests/185.out | 8 +-
tests/qemu-iotests/188 | 1 +
tests/qemu-iotests/188.out | 2 +-
tests/qemu-iotests/189 | 1 +
tests/qemu-iotests/189.out | 4 +-
tests/qemu-iotests/198 | 1 +
tests/qemu-iotests/198.out | 4 +-
tests/qemu-iotests/206 | 1 +
tests/qemu-iotests/255.out | 8 +-
tests/qemu-iotests/263 | 1 +
tests/qemu-iotests/263.out | 4 +-
tests/qemu-iotests/274.out | 46 ++--
tests/qemu-iotests/280.out | 2 +-
tests/qemu-iotests/284 | 1 +
tests/qemu-iotests/284.out | 6 +-
tests/qemu-iotests/293 | 208 ++++++++++++++++
tests/qemu-iotests/293.out | 99 ++++++++
tests/qemu-iotests/294 | 90 +++++++
tests/qemu-iotests/294.out | 30 +++
tests/qemu-iotests/295 | 280 +++++++++++++++++++++
tests/qemu-iotests/295.out | 40 +++
tests/qemu-iotests/296 | 234 +++++++++++++++++
tests/qemu-iotests/296.out | 33 +++
tests/qemu-iotests/common.filter | 106 ++++++--
tests/qemu-iotests/common.rc | 30 +++
tests/qemu-iotests/group | 4 +
tests/qemu-iotests/iotests.py | 78 ++++--
59 files changed, 2591 insertions(+), 493 deletions(-)
create mode 100644 block/amend.c
create mode 100755 tests/qemu-iotests/293
create mode 100644 tests/qemu-iotests/293.out
create mode 100755 tests/qemu-iotests/294
create mode 100644 tests/qemu-iotests/294.out
create mode 100755 tests/qemu-iotests/295
create mode 100644 tests/qemu-iotests/295.out
create mode 100755 tests/qemu-iotests/296
create mode 100644 tests/qemu-iotests/296.out
--
2.26.2
- [PATCH 00/19] block: LUKS encryption slot management + iotest tweaks,
Max Reitz <=
- [PATCH 02/19] iotests: filter few more luks specific create options, Max Reitz, 2020/06/25
- [PATCH 01/19] iotests: Make _filter_img_create more active, Max Reitz, 2020/06/25
- [PATCH 03/19] iotests/common.rc: Add _require_working_luks, Max Reitz, 2020/06/25
- [PATCH 05/19] iotests.py: Add (verify|has)_working_luks(), Max Reitz, 2020/06/25
- [PATCH 04/19] iotests.py: Add qemu_img_pipe_and_status(), Max Reitz, 2020/06/25