qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] Add virtio-blk-drive-serial test


From: Zhi Yong Wu
Subject: Re: [Qemu-devel] [PATCH] Add virtio-blk-drive-serial test
Date: Mon, 16 Jan 2012 09:57:27 +0800

On Sun, Jan 15, 2012 at 10:39 PM, Anthony Liguori <address@hidden> wrote:
> On 01/13/2012 07:25 PM, Zhi Yong Wu wrote:
>>
>> On Sat, Jan 14, 2012 at 9:03 AM, Zhi Yong Wu<address@hidden>  wrote:
>>>
>>> On Sat, Jan 14, 2012 at 5:49 AM, Ryan Harper<address@hidden>  wrote:
>>>>
>>>> We can test out the virtio-blk drive serial number by generating and
>>>> then
>>>> reading it back via the file in sysfs.
>>>>
>>>> Signed-off-by: Ryan Harper<address@hidden>
>>>> ---
>>>>  tests/virtio-blk-drive-serial.sh |   40
>>>> ++++++++++++++++++++++++++++++++++++++
>>>>  1 files changed, 40 insertions(+), 0 deletions(-)
>>>>  create mode 100755 tests/virtio-blk-drive-serial.sh
>>>>
>>>> diff --git a/tests/virtio-blk-drive-serial.sh
>>>> b/tests/virtio-blk-drive-serial.sh
>>>> new file mode 100755
>>>> index 0000000..0586f97
>>>> --- /dev/null
>>>> +++ b/tests/virtio-blk-drive-serial.sh
>>>> @@ -0,0 +1,40 @@
>>>> +#!/bin/sh
>>>> +
>>>> +serial="0123456789abcdefghi"
>>>> +
>>>> +in_host() {
>>>> +    tmpdisk=$tmpdir/disk.img
>>>> +    qemu-img create -f qcow2 $tmpdisk 10G
>>>> +
>>>> +    qemu -nographic -enable-kvm \
>>>> +    -drive
>>>> file=$tmpdisk,if=none,id=drive-virtio-disk0,format=raw,cache=none,serial=$serial
>>>> \
>>>> +    -device
>>>> virtio-blk-pci,bus=pci.0,addr=0x4,drive=drive-virtio-disk0,id=virtio-disk0
>>>> +    rc=$?
>>>> +
>>>> +    rm $tmpdisk
>>>> +    return $rc
>>>> +}
>>>> +
>>>> +in_guest() {
>>>> +    sysfspath=/sys/block/vda
>>>> +    if ! test -e $sysfspath; then
>>>> +    echo "Device not visible!"
>>>> +    return 1
>>>> +    fi
>>>> +
>>>> +    guest_serial=`cat $sysfspath/serial`
>>>> +
>>>> +    if test "$guest_serial" != "$serial"; then
>>>> +    echo "drive has wrong serial!"
>>>> +    echo "Expected '$serial', got '$guest_serial'"
>>>> +    return 2
>>>> +    fi
>>>> +
>>>> +    return 0
>>>> +}
>>>
>>> How will you make in_guest() run in that guest system?
>>> From the code below, i guess that qtest framework make sure it.
>
>
> qemu-test.  qtest is something different.
>
> The script is copied into the initramfs used to run the guest.  QEMU_TEST=1
> only in the host so the code below invokes in_guest only in the guest.
thanks.
>
> Regards,
>
> Anthony Liguori
>
>
>>>> +
>>>> +if test $QEMU_TEST; then
>>>> +    in_host
>>>> +else
>>>> +    in_guest
>>>> +fi
>>>> --
>>>> 1.7.6
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Regards,
>>>
>>> Zhi Yong Wu
>>
>>
>>
>>
>



-- 
Regards,

Zhi Yong Wu



reply via email to

[Prev in Thread] Current Thread [Next in Thread]