102 lines
3.5 KiB
Diff
102 lines
3.5 KiB
Diff
From 387bd4c6fee8ab339fd04e0b841b0c67e6020c8a Mon Sep 17 00:00:00 2001
|
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
|
Date: Sun, 8 May 2022 18:05:45 +0100
|
|
Subject: [PATCH] tests: luks: Reduce time taken to run these tests
|
|
|
|
Under valgrind they ran very slowly. Turns out valgrinding over
|
|
GnuTLS hashing code is not pretty. About half the time seems to be
|
|
taken opening the keyslot, and the rest copying the data.
|
|
|
|
This change reduces the time (under valgrind) from 15 minutes 45 seconds
|
|
to about 6 mins 30 seconds.
|
|
|
|
(cherry picked from commit 7320ae5dba476171a024ca44b889b3474302dc40)
|
|
---
|
|
tests/test-luks-copy.sh | 18 +++++++++---------
|
|
tests/test-luks-info.sh | 6 +++---
|
|
2 files changed, 12 insertions(+), 12 deletions(-)
|
|
|
|
diff --git a/tests/test-luks-copy.sh b/tests/test-luks-copy.sh
|
|
index 99f300d0..01801811 100755
|
|
--- a/tests/test-luks-copy.sh
|
|
+++ b/tests/test-luks-copy.sh
|
|
@@ -60,8 +60,8 @@ rm -f $encrypt_disk $plain_disk $pid $sock
|
|
qemu-img create -f luks \
|
|
--object secret,data=123456,id=sec0 \
|
|
-o key-secret=sec0 \
|
|
- $encrypt_disk 10M
|
|
-truncate -s 10M $plain_disk
|
|
+ $encrypt_disk 1M
|
|
+truncate -s 1M $plain_disk
|
|
qemu-img convert --target-image-opts -n \
|
|
--object secret,data=123456,id=sec0 \
|
|
$plain_disk \
|
|
@@ -74,11 +74,11 @@ start_nbdkit -P $pid -U $sock \
|
|
uri="nbd+unix:///?socket=$sock"
|
|
|
|
# Copy the whole disk out. It should be empty.
|
|
-nbdcopy "$uri" $plain_disk
|
|
+nbdcopy -C 1 "$uri" $plain_disk
|
|
|
|
if [ "$(hexdump -C $plain_disk)" != '00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
|
|
*
|
|
-00a00000' ]; then
|
|
+00100000' ]; then
|
|
echo "$0: expected plaintext disk to be empty"
|
|
exit 1
|
|
fi
|
|
@@ -88,14 +88,14 @@ fi
|
|
nbdsh -u "$uri" \
|
|
-c 'h.pwrite(b"1"*65536, 0)' \
|
|
-c 'h.pwrite(b"2"*65536, 128*1024)' \
|
|
- -c 'h.pwrite(b"3"*65536, 9*1024*1024)' \
|
|
+ -c 'h.pwrite(b"3"*65536, 900*1024)' \
|
|
-c 'buf = h.pread(65536, 0)' \
|
|
-c 'assert buf == b"1"*65536' \
|
|
-c 'buf = h.pread(65536, 65536)' \
|
|
-c 'assert buf == bytearray(65536)' \
|
|
-c 'buf = h.pread(65536, 128*1024)' \
|
|
-c 'assert buf == b"2"*65536' \
|
|
- -c 'buf = h.pread(65536, 9*1024*1024)' \
|
|
+ -c 'buf = h.pread(65536, 900*1024)' \
|
|
-c 'assert buf == b"3"*65536' \
|
|
-c 'h.flush()'
|
|
|
|
@@ -115,11 +115,11 @@ if [ "$(hexdump -C $plain_disk)" != '00000000 31 31 31 31 31 31 31 31 31 31 31
|
|
*
|
|
00030000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
|
|
*
|
|
-00900000 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 |3333333333333333|
|
|
+000e1000 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 |3333333333333333|
|
|
*
|
|
-00910000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
|
|
+000f1000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
|
|
*
|
|
-00a00000' ]; then
|
|
+00100000' ]; then
|
|
echo "$0: unexpected content"
|
|
exit 1
|
|
fi
|
|
diff --git a/tests/test-luks-info.sh b/tests/test-luks-info.sh
|
|
index 3eff657b..ef141ecd 100755
|
|
--- a/tests/test-luks-info.sh
|
|
+++ b/tests/test-luks-info.sh
|
|
@@ -46,11 +46,11 @@ rm -f $disk $info
|
|
qemu-img create -f luks \
|
|
--object secret,data=123456,id=sec0 \
|
|
-o key-secret=sec0 \
|
|
- $disk 10M
|
|
+ $disk 1M
|
|
|
|
nbdkit -U - file $disk --filter=luks passphrase=123456 \
|
|
--run 'nbdinfo $uri' > $info
|
|
cat $info
|
|
|
|
-# Check the size is 10M (so it doesn't include the LUKS header).
|
|
-grep "10485760" $info
|
|
+# Check the size is 1M (so it doesn't include the LUKS header).
|
|
+grep "1048576" $info
|
|
--
|
|
2.31.1
|
|
|