KVM-Autotest/TODO
From KVM
KVM-Autotest To-Do list
Framework
- Redirect guest monitor to serial and capture guest error messages written to console. Log the errors and also scan for specific problems (e.g. oops)
- Support an "expected to fail" param (at least in our html report)
- Log a gdb-backtrace for tests (executables) which generate a core dump file.
- Enable "guest-load" for a VMs before/while tests are running (e.g. migration of a VM, while a movie is playing on it) [Michael]
- Fail upon indentation/white-space problems in the configuration file
- Add a way to shutdown the VMs when the whole job completes (compared to doing nothing or shutting-down after every test) [Michael]
- Integrate the following code into the framework:
#!/usr/bin/python
import sys, os, re, random, ctypes, time
tasks = sys.argv[1:]
threads = [int(t) for k in tasks for t in os.listdir('/proc/%s/task' % (k,))]
cpus = [int(c[3:]) for c in os.listdir('/sys/devices/system/cpu') if re.match(r'cpu[0-9]+', c)]
rand = random.Random()
sched_setaffinity = ctypes.CDLL('libc.so.6').sched_setaffinity
while True: pid = rand.choice(threads) cpu = rand.choice(cpus) mask = 1 << cpu sched_setaffinity(ctypes.c_int(pid), ctypes.c_size_t(4), ctypes.byref(ctypes.c_int(mask))) try: time.sleep(0.01) except: break
- get the serial console information (BeiJing QE)
- Random generated macaddress and ifname (BeiJing QE)
- Postcommand for qemu-img check (BeiJing QE)
Web Interface
- Integrate Dror Russo's patches [Lucas]
Tests
Client Side Test
- Find out how to use Autotest's netperf test with guests [Yolkfull]
- If needed, write a netperf/iperf test [jasowang] [NEEDS MORE WORK]
- cpu hotplug [Lucas, DONE]
- pxe boot * net types [BeiJing QE]
- qcow1, qcow2, vmdk, vhd
- qcow2 internal snapshots
- Further migration [BeiJing QE]
- Multiple nics [BeiJing QE]
- multiple disks [BeiJing QE]
- ksm [jasowang, jzupka, ldoktor]
- -vga stg, nographics
- kvm unit-tests
- Add unattended guest installations (using kickstart or answer-files) [jasowang]
- kvm_install -- keep src and build directories under <kvm_autotest_root> instead of under kvm_runtest_2.
- Stable tsc test - http://people.redhat.com/mingo/time-warp-test/MINI-HOWTO [jasowang]
- Guest installation with pv-block device/driver (for both windows and Linux)
- savevm test [jasowang]
- Guests with large page support [jzupka, ldoktor]
- Verify SMBIOS/DMI data (UUID, for example) [Yolkfull]
- Disk serial number (for IDE, SCSI, VirtIO drives) [Yolkfull]
- Test block device cancellation path using device mapper to generate errors ( after we had a crash in de_write_dma_cb)
- Extend pci_assignable to support other PCI devices (USB, video cards, TV card etc)
- Different CPU flags support [BeiJing QE]
- Integrate the kvm unit test into kvm-autoteset [BeiJing QE]
- further vlan [BeiJing QE]
- ethtool test [BeiJing QE]
- Jumbo Frame test [BeiJing QE]
- Promisc Mode Nic test [BeiJing QE]
- Guest nic bonding test [BeiJing QE]
- Nic driver load/unload test [BeiJing QE]
- Ping test [BeiJing QE]
- Multicast test [BeiJing QE]
- Use private bridge and dnsmasq to do the unattended installation [BeiJing QE]
- Passthrough the perf keys of run_autotest to autotest server [BeiJing QE]
Server Side Tests
- Run netperf test between two guests [Yolkfull]
- Migration with/without workload(dbench,lmbench etc) [Yolkfull] [Patch Sent,need review]
- Register the virtual machine into autotest server and run benchmark through autotest server [BeiJing QE]
Misc
- Add docstrings to all functions that still lack them, including the ones in stepmaker.py, stepeditor.py and kvm_tests.py [Michael]
- Document the setupssh.iso and setuptelnet.iso creation procedures in the wiki
- Rename all Windows ISOs currently used to their official MSDN names
- Share all the stepmaker data somehow so other people can debug stepfiles
- Fill the sections "Working with step files" and "Step file creation tips" in the wiki [Michael]
Bugs
- Please open bugs on the [autotest defect tracking system]