#!/bin/bash QEMU_DEF=/home/amit/src/qemu-kvm/x86_64-softmmu/qemu-system-x86_64 QEMU_OLD_DEF=/home/amit/src/qemu/x86_64-softmmu/qemu-system-x86_64 KERNEL_DEF=/home/amit/tmp/linux-2.6/arch/x86/boot/bzImage QEMU=${QEMU:-$QEMU_DEF} QEMU_OLD=${QEMU_OLD:-$QEMU_OLD_DEF} KERNEL=${KERNEL:-$KERNEL_DEF} GUEST=/guests/f11-auto.qcow2 KERNEL="-kernel $KERNEL" KERNELARG="-append \"root=/dev/sda2 console=tty0 console=ttyS0\"" CHARDEVS="-chardev socket,path=/tmp/amit/test0,server,nowait,id=test0 \ -chardev socket,path=/tmp/amit/test1,server,nowait,id=test1 \ -chardev socket,path=/tmp/amit/test2,server,nowait,id=test2 \ -chardev socket,path=/tmp/amit/test3,server,nowait,id=test3 \ -chardev socket,path=/tmp/amit/test4,server,nowait,id=test4" VIRTSER="-device virtio-serial \ -device virtconsole,chardev=test0,name=console.0 \ -device virtserialport,chardev=test1,name=test1 \ -device virtserialport,chardev=test2,name=test2 \ -device virtserialport,chardev=test3,name=test3 \ -device virtserialport,chardev=test4,name=test4" VNC="-vnc :1" MISCOPT="-net none -enable-kvm -m 1G -serial file:/tmp/amit/test-serial.log -monitor unix:/tmp/amit/test-monitor,server,nowait" #KVMOPT="-smp 2" SNAPSHOT="-snapshot" # -- Iteration 1: new kernel, new qemu -- QEMU_OPTS="$GUEST $KERNEL $KERNELARG $CHARDEVS $VIRTSER $VNC $MISCOPT $SNAPSHOT $KVMOPT" echo $QEMU $QEMU_OPTS $QEMU $QEMU_OPTS & sleep 5 > /tmp/amit/guest-big-file > /tmp/amit/guest-csumfile time ./auto-virtserial pkill qemu #exit; # -- Iteration 2: old kernel, new qemu -- sleep 5 QEMU_OPTS="$GUEST $CHARDEVS $VIRTSER $VNC $MISCOPT $SNAPSHOT $KVMOPT" echo $QEMU $QEMU_OPTS $QEMU $QEMU_OPTS & sleep 5 > /tmp/amit/guest-big-file > /tmp/amit/guest-csumfile time ./auto-virtserial pkill qemu # -- Iteration 3: new kernel, old qemu -- sleep 5 CHARDEVS= VIRTSER="-virtioconsole unix:/tmp/amit/test0,server,nowait" QEMU_OPTS="$GUEST $KERNEL $KERNELARG $CHARDEVS $VIRTSER $VNC $MISCOPT $SNAPSHOT" echo $QEMU_OLD $QEMU_OPTS $QEMU_OLD $QEMU_OPTS & sleep 5 > /tmp/amit/guest-big-file > /tmp/amit/guest-csumfile time ./auto-virtserial pkill qemu