mirror of
https://github.com/qemu/qemu.git
synced 2024-11-26 21:33:40 +08:00
iotests: Drop format-specific in _filter_img_info
_filter_img_info should remove format-specific information, too. We already have such a filter in _img_info, and it is very useful for query-block-named-block-nodes (etc.), too. However, in 198 we need that information (but we still want the rest of the filter), so make that filtering optional. Note that "the rest of the filter" includes filtering of the test directory, so we can drop the _filter_testdir from 198 at the same time. Signed-off-by: Max Reitz <mreitz@redhat.com> Message-id: 20171123020832.8165-7-mreitz@redhat.com Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Fam Zheng <famz@redhat.com> Signed-off-by: Max Reitz <mreitz@redhat.com>
This commit is contained in:
parent
6dd6d7abf0
commit
1cc6169bb2
@ -91,11 +91,13 @@ $QEMU_IO --object $SECRET0 --object $SECRET1 -c "read -P 0x9 0 $size" --image-op
|
||||
|
||||
echo
|
||||
echo "== checking image base =="
|
||||
$QEMU_IMG info --image-opts $IMGSPECBASE | _filter_img_info | _filter_testdir | sed -e "/^disk size:/ D"
|
||||
$QEMU_IMG info --image-opts $IMGSPECBASE | _filter_img_info --format-specific \
|
||||
| sed -e "/^disk size:/ D"
|
||||
|
||||
echo
|
||||
echo "== checking image layer =="
|
||||
$QEMU_IMG info --image-opts $IMGSPECLAYER | _filter_img_info | _filter_testdir | sed -e "/^disk size:/ D"
|
||||
$QEMU_IMG info --image-opts $IMGSPECLAYER | _filter_img_info --format-specific \
|
||||
| sed -e "/^disk size:/ D"
|
||||
|
||||
|
||||
# success, all done
|
||||
|
@ -140,6 +140,15 @@ _filter_img_create()
|
||||
|
||||
_filter_img_info()
|
||||
{
|
||||
if [[ "$1" == "--format-specific" ]]; then
|
||||
local format_specific=1
|
||||
shift
|
||||
else
|
||||
local format_specific=0
|
||||
fi
|
||||
|
||||
discard=0
|
||||
regex_json_spec_start='^ *"format-specific": \{'
|
||||
sed -e "s#$IMGPROTO:$TEST_DIR#TEST_DIR#g" \
|
||||
-e "s#$TEST_DIR#TEST_DIR#g" \
|
||||
-e "s#$IMGFMT#IMGFMT#g" \
|
||||
@ -160,7 +169,25 @@ _filter_img_info()
|
||||
-e "/block_state_zero: \\(on\\|off\\)/d" \
|
||||
-e "/log_size: [0-9]\\+/d" \
|
||||
-e "s/iters: [0-9]\\+/iters: 1024/" \
|
||||
-e "s/uuid: [-a-f0-9]\\+/uuid: 00000000-0000-0000-0000-000000000000/"
|
||||
-e "s/uuid: [-a-f0-9]\\+/uuid: 00000000-0000-0000-0000-000000000000/" | \
|
||||
while IFS='' read -r line; do
|
||||
if [[ $format_specific == 1 ]]; then
|
||||
discard=0
|
||||
elif [[ $line == "Format specific information:" ]]; then
|
||||
discard=1
|
||||
elif [[ $line =~ $regex_json_spec_start ]]; then
|
||||
discard=2
|
||||
regex_json_spec_end="^${line%%[^ ]*}\\},? *$"
|
||||
fi
|
||||
if [[ $discard == 0 ]]; then
|
||||
echo "$line"
|
||||
elif [[ $discard == 1 && ! $line ]]; then
|
||||
echo
|
||||
discard=0
|
||||
elif [[ $discard == 2 && $line =~ $regex_json_spec_end ]]; then
|
||||
discard=0
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
# filter out offsets and file names from qemu-img map; good for both
|
||||
|
Loading…
Reference in New Issue
Block a user