[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 5/5] iotests/296: Accept early failure
From: |
Hanna Reitz |
Subject: |
[PATCH 5/5] iotests/296: Accept early failure |
Date: |
Fri, 4 Mar 2022 16:37:29 +0100 |
As of "crypto: perform permission checks under BQL", permission failures
occur early in the blockdev-amend job to update a LUKS volume's keys.
Expect them in x-blockdev-amend's QMP reply instead of waiting for the
actual job to fail later.
(Note that the job will still be created, so we need to wait for it to
disappear even when the QMP command failed. Otherwise, the job ID
"job0" will remain in use and we cannot launch another job with the same
ID.)
Signed-off-by: Hanna Reitz <hreitz@redhat.com>
---
tests/qemu-iotests/296 | 8 ++++++--
tests/qemu-iotests/296.out | 17 +++++------------
2 files changed, 11 insertions(+), 14 deletions(-)
diff --git a/tests/qemu-iotests/296 b/tests/qemu-iotests/296
index 099a3eeaa5..f80ef3434a 100755
--- a/tests/qemu-iotests/296
+++ b/tests/qemu-iotests/296
@@ -174,8 +174,12 @@ class EncryptionSetupTestCase(iotests.QMPTestCase):
}
result = vm.qmp('x-blockdev-amend', **args)
- assert result['return'] == {}
- vm.run_job('job0')
+ iotests.log(result)
+ # Run the job only if it was created
+ event = ('JOB_STATUS_CHANGE',
+ {'data': {'id': 'job0', 'status': 'created'}})
+ if vm.events_wait([event], timeout=0.0) is not None:
+ vm.run_job('job0')
# test that when the image opened by two qemu processes,
# neither of them can update the encryption keys
diff --git a/tests/qemu-iotests/296.out b/tests/qemu-iotests/296.out
index 42205cc981..609826eaa0 100644
--- a/tests/qemu-iotests/296.out
+++ b/tests/qemu-iotests/296.out
@@ -1,11 +1,9 @@
-{"execute": "job-dismiss", "arguments": {"id": "job0"}}
{"return": {}}
-Job failed: Failed to get shared "consistent read" lock
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
{"return": {}}
-Job failed: Failed to get shared "consistent read" lock
-{"execute": "job-dismiss", "arguments": {"id": "job0"}}
+{"error": {"class": "GenericError", "desc": "Failed to get shared \"consistent
read\" lock"}}
+{"error": {"class": "GenericError", "desc": "Failed to get shared \"consistent
read\" lock"}}
{"return": {}}
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
{"return": {}}
@@ -13,14 +11,9 @@ qemu-img: Failed to get shared "consistent read" lock
Is another process using the image [TEST_DIR/test.img]?
.
-Job failed: Block node is read-only
-{"execute": "job-dismiss", "arguments": {"id": "job0"}}
-{"return": {}}
-Job failed: Failed to get shared "consistent read" lock
-{"execute": "job-dismiss", "arguments": {"id": "job0"}}
-{"return": {}}
-Job failed: Failed to get shared "consistent read" lock
-{"execute": "job-dismiss", "arguments": {"id": "job0"}}
+{"error": {"class": "GenericError", "desc": "Block node is read-only"}}
+{"error": {"class": "GenericError", "desc": "Failed to get shared \"consistent
read\" lock"}}
+{"error": {"class": "GenericError", "desc": "Failed to get shared \"consistent
read\" lock"}}
{"return": {}}
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
{"return": {}}
--
2.34.1
- [PATCH 0/5] block/amend: Fix failures seen in iotest 296, Hanna Reitz, 2022/03/04
- [PATCH 1/5] block/amend: Clean up job on early failure, Hanna Reitz, 2022/03/04
- [PATCH 2/5] block/amend: Always call .bdrv_amend_clean(), Hanna Reitz, 2022/03/04
- [PATCH 4/5] block/amend: Keep strong reference to BDS, Hanna Reitz, 2022/03/04
- [PATCH 3/5] block/crypto: Reset updating_keys on perm failure, Hanna Reitz, 2022/03/04
- [PATCH 5/5] iotests/296: Accept early failure,
Hanna Reitz <=
- Re: [PATCH 0/5] block/amend: Fix failures seen in iotest 296, Kevin Wolf, 2022/03/04