Block layer patches

-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJZbg1XAAoJEH8JsnLIjy/Wdj8QAJm5SE8cOwonEDRd9AV5n0Eg
 xoHLFEEKjqBJ8oDHHn7huVbNdHN693vM2ro2Exxx8ZCTSdIkvSeVmEOrzb76sWOe
 QRbCTWUKbMD6wjCNF5tqPsvmk+ZkHMqYhyVcRAaIpd+IcEECA16ot/fhRa6Ec/bk
 8GHzDSxkVq5wFgoEJ09hGEE7GY2uGdV1HEJK7xq+Vittx8LV3QMnlH4KvZ9VzYfe
 BnNsmK5vMNlsHTfWfQXsB+sxb+aGGr5v45e4XfctTxGx08ajMC50WnYZUezySERJ
 TXimHOiJNHMpapfU7focLuapwMm6AxpQAh5QzxTBgaqW7eeX3P16DWx4m/WfRL7v
 AuyM4U3TdH0vYZPGlQ5pAlScmeZh+GRBRiDkJf/04q7hH2Hgt85+8gyef7FF/Qta
 KT49tBr64eA89ZUDVFBCkukyYWKWTDSNrGJjB6gMqh7cI6gI55uLdXB/nF4vCgJu
 YfYTdaF/1GJm22HtAg3O5fctRDh14rkBgi5jPhifaT7pP0zZm0JBxGlpXUWkg3RA
 NIhZ2fJ2/FasS7/5IsUjJbYuI52CTLmNXQIRt/ZHekzQkgk1VPrnJls0ibCdG8NF
 4z90uIG7bUuEIjZWKogB+gyH9MMtG3qlfZ0RjmXq2FfWCNhBmfezcGOx+Jnf+XDb
 IMPzzwu77XVcduj4XxKL
 =2c6k
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging

Block layer patches

# gpg: Signature made Tue 18 Jul 2017 14:29:59 BST
# gpg:                using RSA key 0x7F09B272C88F2FD6
# gpg: Good signature from "Kevin Wolf <kwolf@redhat.com>"
# Primary key fingerprint: DC3D EB15 9A9A F95D 3D74  56FE 7F09 B272 C88F 2FD6

* remotes/kevin/tags/for-upstream: (21 commits)
  qemu-img: Check for backing image if specified during create
  blockdev: move BDRV_O_NO_BACKING option forward
  block/vvfat: Fix compiler warning with gcc 7
  vvfat: initialize memory after allocating it
  vvfat: correctly parse non-ASCII short and long file names
  vvfat: add a constant for bootsector name
  vvfat: add constants for special values of name[0]
  qemu-iotests: Test unplug of -device without drive
  qemu-iotests: Test 'info block'
  scsi-disk: bdrv_attach_dev() for empty CD-ROM
  ide: bdrv_attach_dev() for empty CD-ROM
  block: List anonymous device BBs in query-block
  block/qapi: Use blk_all_next() for query-block
  block: Make blk_all_next() public
  block/qapi: Add qdev device name to query-block
  block: Make blk_get_attached_dev_id() public
  block/vpc.c: Handle write failures in get_image_offset()
  block/vmdk: Report failures in vmdk_read_cid()
  block: remove timer canceling in throttle_config()
  block: add clock_type field to ThrottleGroup
  ...

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
Peter Maydell 2017-07-19 10:48:31 +01:00
commit f1a46e8885
34 changed files with 960 additions and 164 deletions

View file

@ -137,6 +137,19 @@ run_qemu <<EOF
{ "execute": "quit" }
EOF
echo
echo === Empty drive with -device and device_del ===
echo
run_qemu -device virtio-scsi-pci -device scsi-cd,id=cd0 <<EOF
{ "execute": "qmp_capabilities" }
{ "execute": "query-block" }
{ "execute": "device_del", "arguments": { "id": "cd0" } }
{ "execute": "system_reset" }
{ "execute": "query-block" }
{ "execute": "quit" }
EOF
# success, all done
echo "*** done"
rm -f $seq.full

View file

@ -57,6 +57,7 @@ Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,if=none,id=disk -device virti
"file": "TEST_DIR/t.qcow2",
"encryption_key_missing": false
},
"qdev": "/machine/peripheral/virtio0/virtio-backend",
"type": "unknown"
}
]
@ -415,4 +416,43 @@ Testing:
"return": {
}
}
=== Empty drive with -device and device_del ===
Testing: -device virtio-scsi-pci -device scsi-cd,id=cd0
{
QMP_VERSION
}
{
"return": {
}
}
{
"return": [
{
"device": "",
"locked": false,
"removable": true,
"qdev": "cd0",
"tray_open": false,
"type": "unknown"
}
]
}
{
"return": {
}
}
{
"return": {
}
}
{
"return": [
]
}
{
"return": {
}
}
*** done

View file

@ -85,8 +85,8 @@ run_qemu_img create -f $IMGFMT -o cluster_size=4k -o help "$TEST_IMG" $size
run_qemu_img create -f $IMGFMT -o cluster_size=4k -o \? "$TEST_IMG" $size
# Looks like a help option, but is part of the backing file name
run_qemu_img create -f $IMGFMT -o backing_file="$TEST_IMG",,help "$TEST_IMG" $size
run_qemu_img create -f $IMGFMT -o backing_file="$TEST_IMG",,\? "$TEST_IMG" $size
run_qemu_img create -f $IMGFMT -u -o backing_file="$TEST_IMG",,help "$TEST_IMG" $size
run_qemu_img create -f $IMGFMT -u -o backing_file="$TEST_IMG",,\? "$TEST_IMG" $size
# Try to trick qemu-img into creating escaped commas
run_qemu_img create -f $IMGFMT -o backing_file="$TEST_IMG", -o help "$TEST_IMG" $size

View file

@ -210,10 +210,10 @@ lazy_refcounts Postpone refcount updates
refcount_bits Width of a reference count entry in bits
nocow Turn off copy-on-write (valid only on btrfs)
Testing: create -f qcow2 -o backing_file=TEST_DIR/t.qcow2,,help TEST_DIR/t.qcow2 128M
Testing: create -f qcow2 -u -o backing_file=TEST_DIR/t.qcow2,,help TEST_DIR/t.qcow2 128M
Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=134217728 backing_file=TEST_DIR/t.qcow2,,help cluster_size=65536 lazy_refcounts=off refcount_bits=16
Testing: create -f qcow2 -o backing_file=TEST_DIR/t.qcow2,,? TEST_DIR/t.qcow2 128M
Testing: create -f qcow2 -u -o backing_file=TEST_DIR/t.qcow2,,? TEST_DIR/t.qcow2 128M
Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=134217728 backing_file=TEST_DIR/t.qcow2,,? cluster_size=65536 lazy_refcounts=off refcount_bits=16
Testing: create -f qcow2 -o backing_file=TEST_DIR/t.qcow2, -o help TEST_DIR/t.qcow2 128M

View file

@ -104,7 +104,7 @@ function add_snapshot_image()
{
base_image="${TEST_DIR}/$((${1}-1))-${snapshot_virt0}"
snapshot_file="${TEST_DIR}/${1}-${snapshot_virt0}"
_make_test_img -b "${base_image}" "$size"
_make_test_img -u -b "${base_image}" "$size"
mv "${TEST_IMG}" "${snapshot_file}"
do_blockdev_add "$1" "'backing': '', " "${snapshot_file}"
}

View file

@ -1,3 +1,4 @@
QA output created by 111
qemu-img: TEST_DIR/t.IMGFMT: Could not open 'TEST_DIR/t.IMGFMT.inexistent': No such file or directory
Could not open backing image to determine size.
*** done

View file

@ -65,7 +65,7 @@ class TestBlockdevDel(iotests.QMPTestCase):
# Add a BlockDriverState that will be used as overlay for the base_img BDS
def addBlockDriverStateOverlay(self, node):
self.checkBlockDriverState(node, False)
iotests.qemu_img('create', '-f', iotests.imgfmt,
iotests.qemu_img('create', '-u', '-f', iotests.imgfmt,
'-b', base_img, new_img, '1M')
opts = {'driver': iotests.imgfmt,
'node-name': node,

View file

@ -66,7 +66,7 @@ _send_qemu_cmd $QEMU_HANDLE \
'return'
# Create snapshot
TEST_IMG="$TEST_IMG.overlay" _make_test_img -b "$TEST_IMG" 1M
TEST_IMG="$TEST_IMG.overlay" _make_test_img -u -b "$TEST_IMG" 1M
_send_qemu_cmd $QEMU_HANDLE \
"{ 'execute': 'blockdev-snapshot-sync',
'arguments': { 'device': 'source',

View file

@ -66,7 +66,7 @@ echo "== verify pattern =="
$QEMU_IO --object $SECRET -c "read -P 0xa 0 $size" --image-opts $IMGSPECBASE | _filter_qemu_io | _filter_testdir
echo "== create overlay =="
_make_test_img --object $SECRET -o "encryption=on,encrypt.key-secret=sec0" -b "$TEST_IMG_BASE" $size
_make_test_img -u --object $SECRET -o "encryption=on,encrypt.key-secret=sec0" -b "$TEST_IMG_BASE" $size
echo
echo "== writing part of a cluster =="

147
tests/qemu-iotests/186 Executable file
View file

@ -0,0 +1,147 @@
#!/bin/bash
#
# Test 'info block' with all kinds of configurations
#
# Copyright (C) 2017 Red Hat, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# creator
owner=kwolf@redhat.com
seq=`basename $0`
echo "QA output created by $seq"
here=`pwd`
status=1 # failure is the default!
_cleanup()
{
_cleanup_test_img
}
trap "_cleanup; exit \$status" 0 1 2 3 15
# get standard environment, filters and checks
. ./common.rc
. ./common.filter
_supported_fmt qcow2
_supported_proto file
_supported_os Linux
if [ "$QEMU_DEFAULT_MACHINE" != "pc" ]; then
_notrun "Requires a PC machine"
fi
function do_run_qemu()
{
echo Testing: "$@"
(
if ! test -t 0; then
while read cmd; do
echo $cmd
done
fi
echo quit
) | $QEMU -S -nodefaults -display none -device virtio-scsi-pci -monitor stdio "$@"
echo
}
function check_info_block()
{
echo "info block" |
QEMU_OPTIONS="" do_run_qemu "$@" | _filter_win32 | _filter_hmp |
_filter_qemu | _filter_generated_node_ids
}
size=64M
_make_test_img $size
removable="floppy ide-cd scsi-cd"
fixed="ide-hd scsi-hd virtio-blk-pci"
echo
echo "=== Empty drives ==="
echo
for dev in $removable; do
check_info_block -device $dev
check_info_block -device $dev,id=qdev_id
done
echo
echo "=== -blockdev/-device=<node-name> ==="
echo
for dev in $fixed $removable; do
check_info_block -blockdev driver=null-co,node-name=null -device $dev,drive=null
check_info_block -blockdev driver=null-co,node-name=null -device $dev,drive=null,id=qdev_id
done
echo
echo "=== -drive if=none/-device=<node-name> ==="
echo
# This creates two BlockBackends that will show up in 'info block'!
# A monitor-owned one from -drive, and anonymous one from -device
for dev in $fixed $removable; do
check_info_block -drive if=none,driver=null-co,node-name=null -device $dev,drive=null,id=qdev_id
done
echo
echo "=== -drive if=none/-device=<bb-name> (with medium) ==="
echo
for dev in $fixed $removable; do
check_info_block -drive if=none,driver=null-co,node-name=null -device $dev,drive=none0
check_info_block -drive if=none,driver=null-co,node-name=null -device $dev,drive=none0,id=qdev_id
done
echo
echo "=== -drive if=none/-device=<bb-name> (without medium) ==="
echo
check_info_block -drive if=none
for dev in $removable; do
check_info_block -drive if=none -device $dev,drive=none0
check_info_block -drive if=none -device $dev,drive=none0,id=qdev_id
done
echo
echo "=== -drive if=... ==="
echo
check_info_block -drive if=floppy
check_info_block -drive if=floppy,driver=null-co
check_info_block -drive if=ide,driver=null-co
check_info_block -drive if=ide,media=cdrom
check_info_block -drive if=ide,driver=null-co,media=cdrom
check_info_block -drive if=scsi,driver=null-co
check_info_block -drive if=scsi,media=cdrom
check_info_block -drive if=scsi,driver=null-co,media=cdrom
check_info_block -drive if=virtio,driver=null-co
check_info_block -drive if=pflash,driver=null-co,size=1M
# success, all done
echo "*** done"
rm -f $seq.full
status=0

489
tests/qemu-iotests/186.out Normal file
View file

@ -0,0 +1,489 @@
QA output created by 186
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
=== Empty drives ===
Testing: -device floppy
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
/machine/peripheral-anon/device[1]: [not inserted]
Attached to: /machine/peripheral-anon/device[1]
Removable device: not locked, tray closed
(qemu) quit
Testing: -device floppy,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
qdev_id: [not inserted]
Attached to: qdev_id
Removable device: not locked, tray closed
(qemu) quit
Testing: -device ide-cd
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
/machine/peripheral-anon/device[1]: [not inserted]
Attached to: /machine/peripheral-anon/device[1]
Removable device: not locked, tray closed
(qemu) quit
Testing: -device ide-cd,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
qdev_id: [not inserted]
Attached to: qdev_id
Removable device: not locked, tray closed
(qemu) quit
Testing: -device scsi-cd
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
/machine/peripheral-anon/device[1]: [not inserted]
Attached to: /machine/peripheral-anon/device[1]
Removable device: not locked, tray closed
(qemu) quit
Testing: -device scsi-cd,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
qdev_id: [not inserted]
Attached to: qdev_id
Removable device: not locked, tray closed
(qemu) quit
=== -blockdev/-device=<node-name> ===
Testing: -blockdev driver=null-co,node-name=null -device ide-hd,drive=null
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
null: null-co:// (null-co)
Attached to: /machine/peripheral-anon/device[1]
Cache mode: writeback
(qemu) quit
Testing: -blockdev driver=null-co,node-name=null -device ide-hd,drive=null,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
null: null-co:// (null-co)
Attached to: qdev_id
Cache mode: writeback
(qemu) quit
Testing: -blockdev driver=null-co,node-name=null -device scsi-hd,drive=null
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
null: null-co:// (null-co)
Attached to: /machine/peripheral-anon/device[1]
Cache mode: writeback
(qemu) quit
Testing: -blockdev driver=null-co,node-name=null -device scsi-hd,drive=null,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
null: null-co:// (null-co)
Attached to: qdev_id
Cache mode: writeback
(qemu) quit
Testing: -blockdev driver=null-co,node-name=null -device virtio-blk-pci,drive=null
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
null: null-co:// (null-co)
Attached to: /machine/peripheral-anon/device[1]/virtio-backend
Cache mode: writeback
(qemu) quit
Testing: -blockdev driver=null-co,node-name=null -device virtio-blk-pci,drive=null,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
null: null-co:// (null-co)
Attached to: /machine/peripheral/qdev_id/virtio-backend
Cache mode: writeback
(qemu) quit
Testing: -blockdev driver=null-co,node-name=null -device floppy,drive=null
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
null: null-co:// (null-co)
Attached to: /machine/peripheral-anon/device[1]
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
Testing: -blockdev driver=null-co,node-name=null -device floppy,drive=null,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
null: null-co:// (null-co)
Attached to: qdev_id
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
Testing: -blockdev driver=null-co,node-name=null -device ide-cd,drive=null
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
null: null-co:// (null-co)
Attached to: /machine/peripheral-anon/device[1]
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
Testing: -blockdev driver=null-co,node-name=null -device ide-cd,drive=null,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
null: null-co:// (null-co)
Attached to: qdev_id
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
Testing: -blockdev driver=null-co,node-name=null -device scsi-cd,drive=null
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
null: null-co:// (null-co)
Attached to: /machine/peripheral-anon/device[1]
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
Testing: -blockdev driver=null-co,node-name=null -device scsi-cd,drive=null,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
null: null-co:// (null-co)
Attached to: qdev_id
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
=== -drive if=none/-device=<node-name> ===
Testing: -drive if=none,driver=null-co,node-name=null -device ide-hd,drive=null,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Removable device: not locked, tray closed
Cache mode: writeback
null: null-co:// (null-co)
Attached to: qdev_id
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device scsi-hd,drive=null,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Removable device: not locked, tray closed
Cache mode: writeback
null: null-co:// (null-co)
Attached to: qdev_id
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device virtio-blk-pci,drive=null,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Removable device: not locked, tray closed
Cache mode: writeback
null: null-co:// (null-co)
Attached to: /machine/peripheral/qdev_id/virtio-backend
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device floppy,drive=null,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Removable device: not locked, tray closed
Cache mode: writeback
null: null-co:// (null-co)
Attached to: qdev_id
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device ide-cd,drive=null,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Removable device: not locked, tray closed
Cache mode: writeback
null: null-co:// (null-co)
Attached to: qdev_id
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device scsi-cd,drive=null,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Removable device: not locked, tray closed
Cache mode: writeback
null: null-co:// (null-co)
Attached to: qdev_id
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
=== -drive if=none/-device=<bb-name> (with medium) ===
Testing: -drive if=none,driver=null-co,node-name=null -device ide-hd,drive=none0
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Attached to: /machine/peripheral-anon/device[1]
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device ide-hd,drive=none0,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Attached to: qdev_id
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device scsi-hd,drive=none0
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Attached to: /machine/peripheral-anon/device[1]
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device scsi-hd,drive=none0,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Attached to: qdev_id
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device virtio-blk-pci,drive=none0
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Attached to: /machine/peripheral-anon/device[1]/virtio-backend
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device virtio-blk-pci,drive=none0,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Attached to: /machine/peripheral/qdev_id/virtio-backend
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device floppy,drive=none0
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Attached to: /machine/peripheral-anon/device[1]
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device floppy,drive=none0,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Attached to: qdev_id
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device ide-cd,drive=none0
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Attached to: /machine/peripheral-anon/device[1]
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device ide-cd,drive=none0,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Attached to: qdev_id
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device scsi-cd,drive=none0
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Attached to: /machine/peripheral-anon/device[1]
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
Testing: -drive if=none,driver=null-co,node-name=null -device scsi-cd,drive=none0,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0 (null): null-co:// (null-co)
Attached to: qdev_id
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
=== -drive if=none/-device=<bb-name> (without medium) ===
Testing: -drive if=none
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0: [not inserted]
Removable device: not locked, tray closed
(qemu) quit
Testing: -drive if=none -device floppy,drive=none0
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0: [not inserted]
Attached to: /machine/peripheral-anon/device[1]
Removable device: not locked, tray closed
(qemu) quit
Testing: -drive if=none -device floppy,drive=none0,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0: [not inserted]
Attached to: qdev_id
Removable device: not locked, tray closed
(qemu) quit
Testing: -drive if=none -device ide-cd,drive=none0
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0: [not inserted]
Attached to: /machine/peripheral-anon/device[1]
Removable device: not locked, tray closed
(qemu) quit
Testing: -drive if=none -device ide-cd,drive=none0,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0: [not inserted]
Attached to: qdev_id
Removable device: not locked, tray closed
(qemu) quit
Testing: -drive if=none -device scsi-cd,drive=none0
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0: [not inserted]
Attached to: /machine/peripheral-anon/device[1]
Removable device: not locked, tray closed
(qemu) quit
Testing: -drive if=none -device scsi-cd,drive=none0,id=qdev_id
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
none0: [not inserted]
Attached to: qdev_id
Removable device: not locked, tray closed
(qemu) quit
=== -drive if=... ===
Testing: -drive if=floppy
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
floppy0: [not inserted]
Attached to: /machine/unattached/device[17]
Removable device: not locked, tray closed
(qemu) quit
Testing: -drive if=floppy,driver=null-co
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
floppy0 (NODE_NAME): null-co:// (null-co)
Attached to: /machine/unattached/device[17]
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
Testing: -drive if=ide,driver=null-co
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
ide0-hd0 (NODE_NAME): null-co:// (null-co)
Attached to: /machine/unattached/device[18]
Cache mode: writeback
(qemu) quit
Testing: -drive if=ide,media=cdrom
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
ide0-cd0: [not inserted]
Attached to: /machine/unattached/device[18]
Removable device: not locked, tray closed
(qemu) quit
Testing: -drive if=ide,driver=null-co,media=cdrom
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
ide0-cd0 (NODE_NAME): null-co:// (null-co, read-only)
Attached to: /machine/unattached/device[18]
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
warning: qemu-system-x86_64: -drive if=scsi,driver=null-co: bus=0,unit=0 is deprecated with this machine type
Testing: -drive if=scsi,driver=null-co
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
scsi0-hd0 (NODE_NAME): null-co:// (null-co)
Attached to: /machine/unattached/device[27]/scsi.0/legacy[0]
Cache mode: writeback
(qemu) quit
warning: qemu-system-x86_64: -drive if=scsi,media=cdrom: bus=0,unit=0 is deprecated with this machine type
Testing: -drive if=scsi,media=cdrom
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
scsi0-cd0: [not inserted]
Attached to: /machine/unattached/device[27]/scsi.0/legacy[0]
Removable device: not locked, tray closed
(qemu) quit
warning: qemu-system-x86_64: -drive if=scsi,driver=null-co,media=cdrom: bus=0,unit=0 is deprecated with this machine type
Testing: -drive if=scsi,driver=null-co,media=cdrom
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
scsi0-cd0 (NODE_NAME): null-co:// (null-co, read-only)
Attached to: /machine/unattached/device[27]/scsi.0/legacy[0]
Removable device: not locked, tray closed
Cache mode: writeback
(qemu) quit
Testing: -drive if=virtio,driver=null-co
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
virtio0 (NODE_NAME): null-co:// (null-co)
Attached to: /machine/peripheral-anon/device[1]/virtio-backend
Cache mode: writeback
(qemu) quit
Testing: -drive if=pflash,driver=null-co,size=1M
QEMU X.Y.Z monitor - type 'help' for more information
(qemu) info block
pflash0 (NODE_NAME): json:{"driver": "null-co", "size": "1M"} (null-co)
Attached to: /machine/unattached/device[2]
Cache mode: writeback
(qemu) quit
*** done

View file

@ -66,7 +66,7 @@ echo "== verify pattern =="
$QEMU_IO --object $SECRET0 -c "read -P 0xa 0 $size" --image-opts $IMGSPECBASE | _filter_qemu_io | _filter_testdir
echo "== create overlay =="
_make_test_img --object $SECRET1 -o "encrypt.format=luks,encrypt.key-secret=sec1,encrypt.iter-time=10" -b "$TEST_IMG_BASE" $size
_make_test_img --object $SECRET1 -o "encrypt.format=luks,encrypt.key-secret=sec1,encrypt.iter-time=10" -u -b "$TEST_IMG_BASE" $size
echo
echo "== writing part of a cluster =="

View file

@ -181,5 +181,6 @@
182 rw auto quick
183 rw auto migration
185 rw auto
186 rw auto
188 rw auto quick
189 rw auto quick

View file

@ -228,7 +228,7 @@ static void test_config_functions(void)
read_timer_cb, write_timer_cb, &ts);
/* structure reset by throttle_init previous_leak should be null */
g_assert(!ts.previous_leak);
throttle_config(&ts, &tt, &orig_cfg);
throttle_config(&ts, QEMU_CLOCK_VIRTUAL, &orig_cfg);
/* has previous leak been initialized by throttle_config ? */
g_assert(ts.previous_leak);
@ -486,7 +486,7 @@ static bool do_test_accounting(bool is_ops, /* are we testing bps or ops */
throttle_init(&ts);
throttle_timers_init(&tt, ctx, QEMU_CLOCK_VIRTUAL,
read_timer_cb, write_timer_cb, &ts);
throttle_config(&ts, &tt, &cfg);
throttle_config(&ts, QEMU_CLOCK_VIRTUAL, &cfg);
/* account a read */
throttle_account(&ts, false, size);