qemu-devel
[Top][All Lists]
Advanced

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

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


From: Ryan Harper
Subject: [Qemu-devel] [PATCH] Add virtio-blk-drive-serial test
Date: Fri, 13 Jan 2012 15:49:37 -0600

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
+}
+
+if test $QEMU_TEST; then
+    in_host
+else
+    in_guest
+fi
-- 
1.7.6




reply via email to

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