ChangeLog: Difference between revisions
From KVM
(kvm-47) |
(typo in category name) |
||
(52 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
= kvm-88 [12 july 2009] = | |||
* merge upstream qemu.git | |||
** virtio indirect ring entries | |||
*** improves block performance for newer Linux guests | |||
** -net tap,sndbuf=... option for improving udp performance | |||
** msi-x support | |||
** sdl window resize | |||
** more flexible -net user configuration | |||
** -cpu host to pass through all host cpu features | |||
** multiboot support for -kernel | |||
* fix KVM_GET_SUPPORTED_CPUID feature usage (Andre Przywara) | |||
* fix register contents after SIPI (Gleb Natapov) | |||
* re-enable device assignment (Markus Armbruster) | |||
* fix ia64 build (Markus Armbruster) | |||
* fix migration for virtio-net version > 7 (Michael S. Tsirkin) | |||
* merge more code with upstream (Glauber Costa) | |||
* fix vnet_hdr checks (Mark McLoughlin) | |||
** fixes broken tap networking with rtl8139 and e1000 | |||
* move extboot to standard optionrom location (Jan Kiszka) | |||
* emulate 32-bit syscall/sysenter instructions on 64-bit guests (Andre Przywara) | |||
** allows cross-vendor live migration with 32-bit userspace on 64-bit kernel | |||
* fix s390 memslot initialization for userspace_addr != 0 (Christian Borntraeger) | |||
* allow s390 stfle instruction to be executed by guest (Christian Borntraeger) | |||
* prepare memory slot data structures for multiple large page sizes (Joerg Roedel) | |||
* correct missing locking in PIT/IRQCHIP/SET_BSP_CPU ioctl paths (Marcelo Tosatti) | |||
* do not allow invalid mtrr/pat settings (Marcelo Tosatti) | |||
* ignore some more AMD system configuration msrs (Andre Przywara) | |||
* introduce module parameter for ignoring unknown msrs (Andre Przywara) | |||
* fix ftrace build when kvm is built into the kernel | |||
* convert powerpc marker probes to tracepoints (Marcelo Tosatti) | |||
* drop old kvmtrace code (Marcelo Tosatti) | |||
* document kvm_io_device locking (Michael S. Tsirkin) | |||
* switch coalesced mmio, PIT creation, io bus to slots_lock (Michael S. Tsirkin) | |||
* fix locking imbalance (Jiri Slaby) | |||
* irq tracing | |||
* mmio tracing | |||
* irqfd deassign (Gregory Haskins) | |||
* x2apic support (Gleb Natapov) | |||
* avoid redelivery of edge triggered interrupt before next edge (Gleb Natapov) | |||
** fixes keyboard issues running Windows XP x64 smp installer | |||
* avoid pit division by zero (Marcelo Tosatti) | |||
* fix KVM_GET_MSR_INDEX_LIST user memory corruption (Jan Kiszka) | |||
* drop old cr3 checks in favor of new checks (Jan Kiszka) | |||
* mmu tracing | |||
* basic API documentation | |||
* ignore msi requests if level = 0 (Michael S. Tsirkin) | |||
* ioapic/pic/msi tracing (Gleb Natapov) | |||
* don't kick vcpu if not in guest mode (Gleb Natapov) | |||
= kvm-87 [25 june 2009] = | |||
* merge qemu upstream (Mark McLoughlin, Avi Kivity) | |||
** tune and view live migration progress | |||
** allow setting qcow2 cluster size | |||
** http protocol for images | |||
** qcow2 speedups | |||
** networking improvements | |||
* fix -no-shatdown command line option (Daniel Gollub) | |||
* fix warnings on 32-bit hosts (Michael S. Tsirkin) | |||
* use a bitmap for tracking used interrupts (Alex Williamson) | |||
* support running without vga option rom (Jan Kiszka) | |||
* make kvmtrace_format mode distro friendly (Eduardo Habkost) | |||
* fix mac annoucement after live migation with virtio net (Gleb Natapov) | |||
* merge cpu state more compatible with upstream qemu (Jan Kiszka) | |||
* improve large page memory layout | |||
* only initialize lapic after the vcpu (Glauber Costa) | |||
* clean up cpuid feature trimming (Glauber Costa) | |||
* avoid harmless msr warnings (Marcelo Tosatti) | |||
* have bios read read MADT to implement acpi _MAT (Gleb Natapov) | |||
* fix tpr patching to get cpu index from Windows PCR (Gleb Natapov) | |||
* separate kvm from pic implementation (Glauber Costa) | |||
* remove cpu index in libkvm/qemu interface (Gleb Natapov) | |||
* halt guest instead of aborting on error | |||
* fix dma on ia64 (Jes Sorensen) | |||
* fix MADT, RSDT creation (Beth Kon) | |||
* start libkvm removal (Glauber Costa) | |||
* make qemu-kvm implementation closer to upstream (Gleb Natapov) | |||
* move acpi processor descriptions to ssdt (Jes Sorensen) | |||
* machine check exception support (Huang Ying) | |||
* not userspace visible yet | |||
* msr cleanups (Jaswinder Singh Rajput) | |||
* fix cpuid error handling (Mark McLoughlin) | |||
* fix jmp far decoding | |||
* makefile cleanup (Christoph Hellwig) | |||
* drop "interrupt shadow" flag when single stepping (Gleb Natapov) | |||
* allow 4K ptes with PAT bit set | |||
* irqfd (Gregory Haskins) | |||
* allow speaker emulation in usespace (Jan Kiszka) | |||
* fix ia64 timestamp counter (Jes Sorensen) | |||
* fix PAE PDPTR handling | |||
** fixes Fedora 11 i686 guests | |||
* s390 inter-vcpu communication fixes (Christian Ehrhardt) | |||
* s390 memory slot management improvements (Christian Ehrhardt) | |||
* reduce MSI-X support to 256 vectors (Sheng Yang) | |||
* avoid truncation of sysenter msrs on AMD (Andre Przywara) | |||
* fix performance problem due to irq disabling on device assignment (Sheng Yang) | |||
* fix init/exit text annotations (Stephen Rothwell) | |||
* clean up coalesced_mmio destruction (Gregory Haskins) | |||
* cleanup kernel iodevice code (Gregory Haskins) | |||
* register PIT device after initialization (Gregory Haskins) | |||
* avoid redundant tlb flush when using ept | |||
* simplify ptptr and cr3 management on Intel | |||
* cache pdptrs for i686 pae guests | |||
* improve handling of unhandled ept violations | |||
* fix host reboot failures with CONFIG_MAXSMP | |||
* powerpc e500 adjustments (Liu Yu) | |||
* vmx unrestricted guest (Nitin A Kamble) | |||
* clean up lapic interface (Jan Kiszka) | |||
* fix PIC locking (Marcelo Tosatti) | |||
* improve PIC and IOAPIC scaling (Marcelo Tosatti) | |||
* handle machine checks while running in guest mode (Andi Kleen) | |||
* disable large pages on misaligned memory slots | |||
* prevent overflow in largepage calculation | |||
* prevent unnecessarily setting guest pages dirty bits under ept | |||
* decouple vcpu id from apic id (Gleb Natapov) | |||
* improve internal vcpu accessors (Gleb Natapov) | |||
* break infinite emulation failure loops | |||
* fix mmu audit (Marcelo Tosatti) | |||
* generic performance counter msr handling (Andre Przywara, Amit Shah) | |||
* improve ept error reporting (Marcelo Tosatti) | |||
* disable large pages if ept does not support them (Marcelo Tosatti) | |||
* improve simultaneous exception handling (Gleb Natapov) | |||
* optimize APIC interrupt request register searching (Gleb Natapov) | |||
* fix live migration with large pages (Izik Eidus) | |||
* fix racy event propagation in timer (Jan Kiszka) | |||
* remove unnecessary atomic test in timer (Jan Kiszka) | |||
* optimize cr2 reloads on vmx | |||
* drop cr2 save/restore on svm | |||
* fix crash when guest uses vmx instructions | |||
* implement msrs used by Hyper-V as a guest (Alexander Graf) | |||
* implement invlpga instruction (Alexander Graf) | |||
* improve nested interrupt injection (Alexander Graf) | |||
* convert kvmtrace to use the generic kernel infrastructure (Marcelo Tosatti) | |||
* fix concurrent mmu reloads and tlb flushes (Marcelo Tosatti) | |||
* fix ia64 build (Jes Sorensen) | |||
= kvm-86 [20 may 2009] = | |||
* merge qemu.git | |||
** qcow2 corruption fixes | |||
** cpuid initialization fixes | |||
** numa support | |||
** improve rtc time drift compensation | |||
** hardware watchdog | |||
* merge bochs bios | |||
* drop packets if all net links are down (Mark McLoughlin) | |||
* fix device assignment error checking (Michael S. Tsirkin) | |||
* fix -drive boot= parameter help (Pauline Middelink) | |||
* fix tap networking after merge (Mark McLoughlin) | |||
* set default configure option for ia64 (Xiantao Zhang) | |||
* remove unnecesary differences compared to upstream (Anthony Liguori) | |||
* fix build outside source directory (Anthony Liguori) | |||
* ppc build fixes (Hollis Blanchard) | |||
* revert incorrect ia64 icache sync (Hollis Blanchard) | |||
* fix apic id save/load (Glauber Costa) | |||
** fixes smp live migration | |||
* libkvm cosmetics (Michael S. Tsirkin) | |||
* fix virtio-net save/load (Alex Williamson) | |||
* allow loading additional acpi tables (Gleb Natapov) | |||
* allow loading additional smbios entries (Alex Williamson) | |||
* fix dirty tracking on large memory (Glauber Costa) | |||
** fixes live migration for guests with a lot of memory | |||
* fix device assignment irq error handling (Alex Williamson) | |||
* make kvm headers C++ friendly (Nathan Binkert) | |||
* remove global page optimization (Marcelo Tosatti) | |||
** fixes FreeBSD on shadow paging | |||
* move lcall, ljmp, jcc, pio decoding to decode stage (Gleb Natapov) | |||
* only skip instruction on task switch when approprite (Gleb Natapov) | |||
* kvmclock cosmetics | |||
* fix memory region overlap check (Jan Kiszka) | |||
* ia64: don't hold slots lock in guest mode (Jes Sorensen) | |||
* check cr3 validity on guest restore (Marcelo Tosatti) | |||
* ia64: flush all tlbs on mapping change (Xiantao Zhang) | |||
* ia64 cosmetics (Jes Sorensen) | |||
* interrupt disable fixes for ia64 (Jes Sorensen) | |||
* unregister cpu frequency notifiers on module unload (Jan Kiszka) | |||
* fix mmu auditing code (Jan Kiszka) | |||
* move irq injection logic to common code (Gleb Natapov) | |||
** contains several irq fixes | |||
* cleanup ept memory type support (Sheng Yang) | |||
* enable snoop control for device assignment (Sheng Yang) | |||
* disable vmx on system shutdown (Sheng Yang) | |||
* fix nx feature reporting | |||
* fix efer reads on hosts without efer | |||
* fix apic debugging (Glauber Costa) | |||
* fix cross vendor migration (Andre Przywara) | |||
* drop request_nmi from kvm_stat (Jan Kiszka) | |||
* fix MTRR, PAT, MCE, MCA feature reporting | |||
* add cr8_legacy, abm, misaligned_sse, sse4, 3dnow prefetch feature reporting | |||
* add movbe and popcnt feature reporting | |||
* use smp_send_reschedule() to kick guests out of guest mode (Marcelo Tosatti) | |||
* device assignment locking fixes (Marcelo Tosatti) | |||
* remove port 80 passthrough on svm | |||
** fixes hangs on some hp laptops | |||
* deal with interrupt shadow state on emulated instructions (Glauber Costa) | |||
* properly lock kvm_mmu_change_mmu_pages (Marcelo Tosatti) | |||
* properly lock memory slot deletion (Marcelo Tosatti) | |||
* expand on make menuconfig help (Robert P. J. Day) | |||
* fix s390 memory slot locking vs vcpu run (Carsten Otte) | |||
* use hrtimer for wakeup on s390 (Christian Borntraeger) | |||
* s390 unlink vcpu on destroy (Christian Borntraeger) | |||
* sanity check s390 intercept (Carsten Otte) | |||
* s390 verify guest has some memory assigned (Carsten Otte) | |||
* do not reexecute software interrupt instructions on intel (Gleb Natapov) | |||
* disable cr8 intercepts if tpr patching is active (Gleb Natapov) | |||
= kvm-85 [21 apr 2009] = | |||
* merge qemu-svn | |||
** microsoft serial mouse emulation | |||
** cpuid fixes | |||
** multiple simultaneous vnc client support | |||
** allow additions of acpi tables from command line | |||
** fix SDL with X.org evdev driver | |||
** vnc sasl authentication | |||
** fix one qcow2 corruptor | |||
** fix qcow2 > 2TB images | |||
** use preadv/pwritev when available for zero-copy block devices | |||
* make pci mmio page aligned (Weidong Han) | |||
* testsuite: MSR_KERNEL_GS_BASE handling | |||
* fix extboot with cache=off (Nolan Leake) | |||
* add release script | |||
* add split qemu and kvm-kmod releases | |||
* remove kvm script | |||
* don't hardcode tsc_khz on older kernels (Marcelo Tosatti) | |||
* count extboot as a disk in bios (Gleb Natapov) | |||
** fixes Vista boot from virtio | |||
* start/stop vcpus before/after devices (Yaniv Kamay) | |||
* ia64 build fixes (Jes Sorensen) | |||
* testsuite: test EFER.NXE | |||
* ./configure fixes (Mark McLoughlin) | |||
* don't use dirty log on ia64 (Yang Zhang) | |||
* improve pci address parsing (Weidong Han) | |||
* backward compatibility for PAGE_KERNEL_UC on ia64 (Yang Zhang) | |||
* backward compatibility for msidef.h on ia64 (Yang Zhang) | |||
* fix 4GB+ guest RAM with large pages (Marcelo Tosatti) | |||
* clear tap features on initialization | |||
* testsuite: jmp/jcc instructions (Gleb Natapov) | |||
* fix handling of large pages in assigned devices (Joerg Roedel) | |||
* mmu cleanups (Joerg Roedel) | |||
* report irq injections to userspace (Gleb Natapov) | |||
* set accessed bit on segment selectos on AMD (Andre Przywara) | |||
** fixes cross-vendor migrations | |||
* fix large page memory leak (Joerg Roedel) | |||
* ppc e500 mmucsr0 register emulation (Liu Yu) | |||
* support device deassignment (Weidong Han) | |||
* fix ia64 msi build errors (Xiantao Zhang) | |||
* update msr state when entering long mode (Amit Shah) | |||
* fix test for long mode (Amit Shah) | |||
** fixes some Solaris x64 variants | |||
* fix sparse annotations (Hannes Eder) | |||
* don't use highmem pages for vmx msr and pio bitmaps | |||
* don't intercept MSR_KERNEL_GS_BASE on Intel | |||
** speeds up Windows 2008 x64 somewhat | |||
* unify ioapic and msi interrupt delivery (Sheng Yang, Gleb Natapov) | |||
* msi-x support (Sheng Yang) | |||
* fix kvmclock memory leak (Joerg Roedel) | |||
* fix preempt warning in kvmclock (Matt T. Yourst) | |||
* guest: skip pit-through-ioapic boot test (Marcelo Tosatti) | |||
* stop ioapic code leaking into archs which don't have an ioapic (Christian Borntraeger) | |||
* pit cleanups (Marcelo Tosatti) | |||
* fix ia64 build (Zhang Yang) | |||
* reduce unnecessary shadow update when a guest pte becomes dirty (Joerg Roedel) | |||
* Altix SN2 real time clock support (Jes Sorensen) | |||
* advertise irq routing table size (Sheng Yang) | |||
* rework device assignment code (Sheng Yang, Marcelo Tosatti) | |||
* fix missing flush on invlpg emulation (Andrea Arcangeli) | |||
* fix ppc e500 mas0 wrong update (Liu Yu) | |||
* fix smp instability on ppc e500 (Liu Yu) | |||
* fix free_mmu_pages() doing things out of lock (Gleb Natapov) | |||
* ignore reads to performance counter EVNTSEL msts (Amit Shah) | |||
** fixes Kapersky antivirus failure | |||
* clean up AMD interrupt injection (Gleb Natapov) | |||
* make vmx module parameters readable, and reflect current setting | |||
* simplify module parameter names | |||
* fix compatibility mode guests ability to trash EFER | |||
* don't unconditionally unhalt vcpu on timer event (Gleb Natapov) | |||
* only unhalt vcpu on interrupt if interrupt window is open (Gleb Natapov) | |||
** prevents 100% cpu on boot failure | |||
* fix incorrect vmcs field sizes on some fields (Eddie Dong) | |||
* fix misleading comment (Eddie Dong) | |||
* enable external interrupts while in ia64 vmm (Yang Zhang) | |||
* fix off-by-one calculating large page count | |||
* emulate page fault caused by reserved bits set in guest pte (Eddie Dong, Sheng Yang) | |||
* use different shadows when EFER.NXE changes | |||
* clean up lapic freeing (Wei Yongjun) | |||
* clean up flexpriority related code (Sheng Yang) | |||
* fix vmx feature testing (Sheng Yang) | |||
* fix PDPTE reserved bit testing (Eddie Dong) | |||
* fix handling of a fault during NMI unblocked due to IRET (Gleb Natapov) | |||
* clean up vmx interrupt completion (Gleb Natapov) | |||
* fix task switch back link pointer (Gleb Natapov) | |||
* fix near call emulation (Gleb Natapov) | |||
* fix extboot failure after reset (Ryan Harper) | |||
* ia64 vga fixes (Xiantao Zhang) | |||
* ia64 instruction/data cache synchronization fixes (Xiantao Zhang) | |||
* disable global page optimization (Marcelo Tosatti) | |||
** fixes FreeBSD failures | |||
* fix locking order when entering ia64 guest (Jes Sorensen) | |||
* fix PIT mode 0 handling (Marcelo Tosatti) | |||
= kvm-84 [15 feb 2009] = | |||
* merge qemu-svn | |||
** redirect slirp traffic to qemu-char device | |||
** slirp fixes | |||
** qcow2 fixes | |||
** nic link status control | |||
** enable ac97 audio by default | |||
** add virtio-console device | |||
** fix rtc time drift on Windows (-rtc-td-hack option) | |||
** add -vga none option for running headless guests | |||
** better block device error propagation | |||
** fix guests halting when switching desktop workspace | |||
** improved display interfaces | |||
** better logging support | |||
** don't corrupt qcow2 images when out disk space on host | |||
** dma api | |||
** add pci device vendor ID | |||
** vnc improvements | |||
** improve Virtual PC disk format support | |||
** scsi fixes | |||
** multicast filtering for e1000 and virtio-net | |||
* add libkvm wrapper for KVM_SET_CPUID2 interface (Amit Shah) | |||
* fix cpuid for leaves 4, 11, 13 (Amit Shah) | |||
* save ia64 nvam (Yang Zhang) | |||
* compile fixes (Mark McLaughlin, Jan Kiszka) | |||
* generic irq routing | |||
* build fixes against RHEL 5 hosts (Andrea Arcangeli) | |||
* fix build when pc-bios directory is empty (Eduardo Habkost) | |||
* improve host version check (Mark McLaughlin) | |||
* drop obsolete eflags conversion to/from qemu emulator (Jan Kiszka) | |||
* preallocate memory with -mem-path (John Cooper) | |||
* don't register unassigned PCI BARs (Gleb Natapov) | |||
* more hrtimer API compatibility | |||
* fix build on uniprocessor hosts (Jan Kiszka) | |||
* fix build on pre-msi hosts (Jan Kiszka) | |||
* allow stopping vm from vcpu thread (Gleb Natapov) | |||
* fix cpu and pci hotplug (Gleb Natapov) | |||
* ppc updates (Liu Yu) | |||
* fix ia64 fp trap handler (Yang Zhang) | |||
* fix ia64 vtlb handling (Xiantao Zhang) | |||
** enables Windows 2008 on ia64 | |||
* support translating ia64 PAL arguments (Xiantao Zhang) | |||
* implement ia64 PAL calls needed by Windows 2008 (Xiantao Zhang) | |||
* map assigned device mmio as uncachable (Sheng Yang) | |||
* fix lapic pending count calculation (Marcelo Tosatti) | |||
* fix s390 printk (Christian Borntraeger) | |||
* fix s390 problem state check (Christian Borntraeger) | |||
* fix s390 SIGP set prefix ioctl (Christian Borntraeger) | |||
* dynamic ia64 cpu count (Jes Sorensen) | |||
* fix lapic build on i386 (Clemens Noss) | |||
* make irq ack notifications use routing table (Marcelo Tosatti) | |||
* FFXSR support (Alexander Graf) | |||
* fix assigned device circular locking dependency (Mark McLaughlin) | |||
* drop unused code from string pio handlers (Jan Kiszka) | |||
* fix kvmclock on hosts with unstable tsc (Gerd Hoffman) | |||
** reenables Fedora 10 guests on those hosts | |||
* enable msi from userspace (Sheng Yang) | |||
* remove duplicated code in EPT handler (Sheng Yang) | |||
* flush volatile msrs on Intel before emulating rdmsr | |||
** fixes cygwin on Windows x64 | |||
= kvm-83 [13 jan 2009] = | |||
* amd iommu support (with Linux 2.6.29+ hosts) (Joerg Roedel) | |||
* merge qemu-svn | |||
** qcow2 correctness fixes | |||
** '-drive serial=...' option | |||
** virtio-net migration fixes | |||
* fix '--with-patched-kernel' build on Ubuntu (Nolan Leake) | |||
* improved tsc handling (Marcelo Tosatti) | |||
** should reduce timing errors on older Linux guests | |||
* remove cpuid code duplication due to upstream qemu work (Amit Shah) | |||
* guest S3 sleep (Gleb Natapov) | |||
* load assigned devices option rom (Kechao Liu) | |||
* '-no-kvm-pit-reinjection' option to improve timing on RHEL 3 era guests (Marcelo Tosatti) | |||
* remove duplicate firmware config interface probe in bios (Sebastian Herbszt) | |||
* backward compatibility for marker_synchronize_register() (Eduardo Habkost) | |||
* fix compile warning in tpr patching (Mark !McLoughlin) | |||
* don't install kvm headers to /usr/local | |||
* fix smbios memory size in certain cases (Bill Rieske) | |||
* simplify mmu shadow walking function | |||
* stop using vmap() on guest pages (annoys ksm) (Izik Eidus) | |||
* fix warning on MSR_VM_HSAVE_PA in dmesg | |||
* fix i8254 timer count read (Marcelo Tosatti) | |||
* ppc e500 core support (Hollis Blanchard) | |||
* fix vmx real mode guest state validity checks | |||
* make pop instruction emulation a little more generic | |||
* implement 'ret far' instruction emulation | |||
* properly lock i8354 timer | |||
* remove ppc debug support (Hollis Blanchard) | |||
* fix race freeing assigned device interrupt (Sheng Yang) | |||
* fix pci interrupt in freeing in device assignment (Sheng Yang) | |||
* allow disabling msi for assigned devices (Sheng Yang) | |||
* emulate amd microcode level msr (Alexander Graf) | |||
** helps esx boot on kvm | |||
* make page unshadowing a little faster | |||
* clear pending pit interrupts when unmasking the timer irq | |||
** fixes xen-on-kvm | |||
* mmu notifiers release method (Marcelo Tosatti) | |||
** fixes large pages support | |||
* expose ia64 registers to userspace (Jes Sorensen) | |||
* fix type in has_svm() (Joe Perches) | |||
* drop unnecessary memory clearing when allocating shadow page (Marcelo Tosatti) | |||
* rename "metaphysical" page attribute to "direct" | |||
* fix irq routing with -no-kernel-irqchip | |||
= kvm-82 [25 dec 2008] = | |||
* merge qemu-svn | |||
** uuid support | |||
** fix CVE-2007-5729 (slirp vulnerability) | |||
** fix CVE-2008-2382 (vnc denial of service) | |||
** better scsi support | |||
** pci subsystem id for pci devices | |||
*** this will cause Windows guest to rediscover hardware | |||
** improved I/O parallelism | |||
** ppc kvm support | |||
** hpet support | |||
*** not fully integrated yet | |||
** monitor 'info status' command | |||
* merge bochs-bios-cvs | |||
** uuid support | |||
** prepare for S3 sleep | |||
* merge vgabios-cvs | |||
* much improved guest debugging (Jan Kiszka) | |||
** both debugger in guest and debugger in host | |||
* fix kvm makefile for separate object dir (Andi Kleen) | |||
* nested svm (Alexander Graf) | |||
** run kvm in kvm in kvm... | |||
* fix ia64 register and stack access from userspace (Jes Sorensen) | |||
* don't treat a global pte as global if cr4.pge is clear | |||
** fixes Vista x86 smp failure on boot | |||
* properly lock virtual i8259 interrupt controller | |||
* fix large host pages invlpg/resync | |||
** fixes oops when using host hugetlbfs | |||
* fix vmload instruction misemulated as lidt | |||
= kvm-81 [16 dec 2008] = | |||
* merge qemu-svn | |||
** fix performance regression with qcow2 files | |||
** improve qcow2 data integrity with cache=writethrough | |||
** fix display corruption with gnome panel auto-appear | |||
** scsi improvements | |||
* shld/shrd instruction emulation and unit test (Guillaume Thouvenin) | |||
* ppc updates (Hollis Blanchard, Deepa Srinivasan, Christian Ehrhardt) | |||
* prepare virtio for upstream merging (Anthony Liguori) | |||
* fix uninitialized variable in virtio-net (Anthony Liguori) | |||
* fix compile failure on Debian (Amit Shah) | |||
* fix display loss in opensuse 11 installer | |||
* fix vmmcall emulation on intel (Amit Shah) | |||
** fixes amd->intel migration | |||
* allow userspace to work with modules from kvm-79 and earlier | |||
* fix undefined behaviour copying cpuid signature (Guillaume Thouvenin) | |||
* fix build with --kerneldir (Maik Hentsche) | |||
* really exit if device assignment fails (Mark !McLoughlin) | |||
* fix vga on ia64 (Xiantao Zhang) | |||
* simplify nmi injection from userspace (Jan Kiszka) | |||
* enable virtio zero-copy (Mark !McLoughlin) | |||
** also fixes crash in rare cases | |||
* fix display loss on 32-bit hosts | |||
* reduce tlb flushing when resyncing pages (Marcelo Tosatti) | |||
* don't resync global pages on context switch (Marcelo Tosatti) | |||
** improves HIGHMEM performance | |||
* prepopulate shadow on invlpg (Marcelo Tosatti) | |||
* fix kvmclock when HZ != 1000 (Eduardo Habkost) | |||
* fix module unload race oops (Christian Borntraeger) | |||
* reduce stack footprint on large hosts (Rusty Russell) | |||
* reduce capability reporting code duplication | |||
* check for missing pae pdptr on invlpg emulation (Marcelo Tosatti) | |||
** fixes solaris 10 oops | |||
* fix handlig of ack from irq shared between assigned and emulated devices (Mark !McLoughlin) | |||
* fix nmi-vs-irq race for -no-kvm-irqchip (Jan Kiszka) | |||
= kvm-80 [7 dec 2008] = | |||
* merge qemu-svn | |||
** automatic port allocation for vnc and similar | |||
** improved cdrom media change handling | |||
** improved debugging support | |||
** more scsi improvements | |||
** e1000 vlan offload | |||
* up to 256 vcpus for ia64 (Jes Sorensen) | |||
* only request io port permission if device assignment is enabled (Jes Sorensen) | |||
* fix in-kernel ioapic reset (Jan Kiszka) | |||
** fixes guest reboot failures | |||
* fix balloon for systems with page size different from 4K (Hollis Blanchard) | |||
* fix bios memory reporting with >32G guests (Bill Rieske) | |||
* drop inclusion of compiler.h in external modules (Xiantao Zhang) | |||
* use vcpu pointers instead of vcpu numbers (Jes Sorensen) | |||
* goodbye bool (Jes Sorensen) | |||
* stop using separate structure for cpu state; use qemu's instead (Jes Sorensen) | |||
* apic testsuite | |||
* fix -no-kvm apic with smp (Jan Kiszka) | |||
* clean up userspace nmi injection (Jan Kiszka) | |||
* adjust external module for 2.6.28 hosts (Mark McLoughlin) | |||
* much improved large mtu/gso support for virtio-net (Mark McLoughlin) | |||
* simplify x86 emulator stack pop operations | |||
* clean up device assignment code (Mark McLoughlin) | |||
* fix extboot returning error incorrectly (Glauber Costa) | |||
* constrain device assignment mmio to page alignment (Han Weidong) | |||
* ppc speedups (Hollis Blanchard) | |||
* fix s390 problem state handling (Christian Borntraeger) | |||
* fix interrupt loss when injecting an nmi | |||
** fixes Linux guests with nmi watchdog hanging | |||
* fix ia64 build (Xiantao Zhang) | |||
* fix emergency reboot and kdump on host while running VMs (Eduardo Habkost) | |||
* fix syncing of self-referencing ptes (Marcelo Tosatti) | |||
* add printk() for ia64 vmm (Xiantao Zhang) | |||
* add crashed vm handler for ia64 (Xiantao Zhang) | |||
* use correct calling convention into ia64 PAL code (Xiantao Zhang) | |||
* request interrupt window after injecting an interrupt if another is pending | |||
* plug ppc memory leak when destroying a vm | |||
* sign kvmclock as a paravirt operation (Glauber Costa) | |||
* MSI support for device assigment (Sheng Yang) | |||
* fix shadow pagetables leak (Marcelo Tosatti) | |||
** fixes an oops | |||
* optimize setting new pte while syncing a page (Marcelo Tosatti) | |||
* reduce code duplication in x86 emulator | |||
* fix s390 refcounting; allow module unload (Christian Borntraeger) | |||
* fix s390 memory leak (Christian Borntraeger) | |||
* prevent tracing calls into unloaded module (Wu Fengguang) | |||
* fix sparse warnings (Hannes Eder) | |||
* clean up irq ack notifiers (Mark McLoughlin) | |||
* powerpc large page support (Hollis Blanchard) | |||
* faster powerpc shadow tlb handling (Hollis Blanchard) | |||
* reduce powerpc guest tlb miss rate on context switches (Hollis Blanchard) | |||
* powerpc exit timing stats (Hollis Blanchard) | |||
* fix -no-kvm-irqchip not working with smp (Jan Kiszka) | |||
* fix rendering regressions introduced by upstream qemu rendering support | |||
= kvm-79 [12 nov 2008] = | |||
* merge qemu-svn | |||
** fix qcow2 problems with scsi | |||
** 'info chardev' monitor command | |||
* device assignment userspace (Amit Shah, Muli Ben Yehudah, Ben-Ami Yassour, Weidong Han, Or Sagi, Nir Peleg, Glauber Costa, Xiantao Zhang) | |||
* multiple processor infrastructure for ppc (Hollis Blanchard) | |||
* fix error handling in eventfd() emulation (Mark McLoughlin) | |||
* handle large mtu with virtio-net (Mark McLoughlin) | |||
* move x86 specific device assignment code to x86 files (Christian Ehrhardt) | |||
* fix 'pci_add' command descriptor (Weidong Han) | |||
* enable pci function level reset for device assignment (Sheng Yang) | |||
* fix incorrect handling of aliases gfns (Izik Eidus) | |||
* ppc optimizations (Hollis Blanchard, Christian Ehrhardt) | |||
* disallow guests from setting memory type when using EPT (Sheng Yang) | |||
* fix cpuid leaf 11 loop termination (Nitin A Kamble) | |||
* fix cpuid multiple leaf iteration (Nitin A Kamble) | |||
* fix ia64 uniprocessor build (Xiantao Zhang) | |||
* fix ppc Kbuild constraints (Hollis Blanchard) | |||
* fix pit initialization memory leak | |||
= kvm-78 [2 nov 2008] = | |||
* fix paravirt kernels due to missing oos flush (Marcelo Tosatti) | |||
* code cleanups (Sheng Yang) | |||
* fix guest shared interrupts for device assignment (Sheng Yang) | |||
* avoid stale asm-offsets.h on ia64 (Xiantao Zhang) | |||
* fix ia64 halt emulation (Xiantao Zhang) | |||
* extend slot bitmap on i386 (Sheng Yang) | |||
* move private memory slots to avoid conflict with device assignment (Sheng Yang) | |||
* future-proof device assignment ABI | |||
* add emulation and unit tests for add acc, imm instruction (Guillaume Thouvenin) | |||
* fix nmi watchdog emulation (Jan Kiszka) | |||
* optimize nmi watchdog delivery (Jan Kiszka) | |||
* require irq ack notifier to be used with in-kernel irqchip (Sheng Yang) | |||
* don't halt non-boot cpu if using in-kernel irqchip (Gleb Natapov) | |||
* add cscope definitions (Sheng Yang) | |||
* merge qemu-svn | |||
** new live migration implementation | |||
** usb improvements | |||
** migration fixes | |||
* read UUID from qemu (Gleb Natapov) | |||
* increase max cpu count to 255 for ia64 (Xiantao Zhang) | |||
* handle INIT before SIPI (Gleb Natapov) | |||
* update ppc for nmi changes (Christian Ehrhardt) | |||
* fix external module generation unifdef problem (Sheng Yang) | |||
* set 'g' bit of segment descriptor on AMD when necessary (Amit Shah) | |||
* set 'busy' bit of task descriptor on AMD when necessary (Amit Shah) | |||
** fixes some AMD->Intel live migration failures | |||
* use emulator to adjust rip of pio string instructions (Guillaume Thouvenin) | |||
* increase rmap preallocation (Marcelo Tosatti) | |||
** fixes oops on mmu intensive smp workloads | |||
* handle mmio in big real mode (Guillaume Thouvenin) | |||
* reorganize ia64 guest data area (Xiantao Zhang) | |||
* fix ia64 guest signal mask (Xiantao Zhang) | |||
* reduce locking when vcpu is halted (Xiantao Zhang) | |||
* update e820 table for ept real mode identity map page (Sheng Yang) | |||
* fix external module build with kvmtrace | |||
* fix ppc xer access (Christian Ehrhardt) | |||
* fix ppc threading (Hollis Blanchard) | |||
* implement libcflat for ppc 44x (Hollis Blanchard) | |||
* set smp limit for ppc (Hollis Blanchard) | |||
* fix ppc memory setup (Christian Ehrhardt) | |||
= kvm-77 [12 oct 2008] = | |||
* merge bochs-bios-cvs | |||
* merge qemu-svn | |||
** more -cpu options | |||
** faster disk emulation (esp. with scsi/virtio) | |||
* improved NMI support (Jan Kiszka) | |||
* improve >4GB memory support (Alex Williamson) | |||
* memory alias cleanups (Glauber Costa) | |||
* fix kvmtrace segfault (Ryota OZAKI) | |||
* make external module compile on split source/object configs (Alexander Graf) | |||
** allows compiling on opensuse | |||
* fix -std-vga regression | |||
* fix migration failure at end of migration protocol | |||
* map mmio pages for device assignment (Weidong Han) | |||
* silence lapic kernel messages (Jan Kiszka) | |||
* fix vcpu reset (Gleb Natapov) | |||
* fix missed invlpg on EPT-enabled machines with EPT disabled (Marcelo Tosatti) | |||
* device assignment on ia64 (Xiantao Zhang) | |||
* memory type support on EPT (Sheng Yang) | |||
= kvm-76 [28 sep 2008] = | |||
* merge qemu-svn | |||
** improved usb support | |||
** vnc improvements | |||
** pass uuid to guest | |||
** scsi improvements | |||
* change virtio-blk to guest-endian configuration (Liu Yu) | |||
* add 'call near absolute' to x86 emulator and testsuite (Mohammed Gamal) | |||
* drop support for kernel memory allocation (Glauber Costa) | |||
* avoid fiddling with ISA mappings (Jan Kiszka) | |||
** improves debugging support | |||
* fix external module build on 2.6.22 hosts | |||
* make kernel and userspace memory slot count agree (Sheng Yang) | |||
* add 'cmp' to x86 emulator testsuite (Mohammed Gamal) | |||
* allow 'make sync' from toplevel directory | |||
* external module compatibility for get_user_pages_fast() api (Jan Kiszka) | |||
* correct mtrr setup with >= 4GB RAM (Alex Williamson) | |||
* fix ia64 boot with acpi enabled (Xiantao Zhang) | |||
* initialize userspace kvm context (Uri Lublin) | |||
* fix ia64 with >= 3GB RAM (Xiantao Zhang) | |||
* avoid allocating translated code buffer when using kvm | |||
* simplify memory registration (Glauber Costa) | |||
* support kvmtrace with external module (Eduardo Habkost) | |||
* ia64 init code simplification (Jes Sorensen) | |||
* ia64 external module compatibility with older kernels (Xiantao Zhang) | |||
* fix live migration due to slot number getting lost (Uri Lublin) | |||
* prevent live migration if a device is missing on the target (Uri Lublin) | |||
* fix include-compat/asm symlinks (Uri Lublin) | |||
* do not execute halted vcpus (Marcelo Tosatti) | |||
* fix global tlb flushes with NPT (Joerg Roedel) | |||
* fix preemption error on real mode emulation | |||
* fix page aging with EPT (Sheng Yang) | |||
* simplify locking around ppc shadow tlb page access (Hollis Blanchard) | |||
* cleanup redundant vmcs read (Jan Kiszka) | |||
* fix 64-bit jmp instruction emulation | |||
* move vmx msr definitions to common code | |||
* better support for instructions that reference the accumulator (Guillaume Thouvenin) | |||
* add cmp acc, imm instruction emulation (Guillaume Thouvenin) | |||
* kernel support for device assignment (Allen Kay, Amit Shah, Weidong Han, Ben-Ami Yassour) | |||
* switch to using get_user_pages_fast() (Marcelo Tosatti) | |||
** nice speedup on 2.6.27+ hosts | |||
* build fix for ia64 (Jes Sorensen) | |||
* code cleanup (Harvey Harrison) | |||
* avoid entering guest after a startup IPI (Gleb Natapov) | |||
* simplify 'push reg' instruction emulation (Guillaume Thouvenin) | |||
* fix error handling on vcpu creation failure (Glauber Costa) | |||
* support Tukwilla ia64 processors (Xiantao Zhang) | |||
* fix tlb flush when converting a large page to small pages (Marcelo Tosatti) | |||
* out-of-sync shadow (Marcelo Tosatti) | |||
* reduce inter-processor interrupt generation when using the PIC (Marcelo Tosatti) | |||
= kvm-75 [10 sep 2008] = | |||
* add 1280x768 std-vga resolution | |||
* ballooning (Anthony Liguori) | |||
** requires 2.6.27+ host to work correctly | |||
* fix bad memory sizing on ia64 (Xiantao Zhang) | |||
* restore option roms to their original content on reset | |||
** fixes extboot failures after reset | |||
* enable ia64 power manangement (Xiantao Zhang) | |||
* add cld/std/cli/sti/clc instructions to testsuite (Mohammed Gamal) | |||
* fix compile errors on hosts that lack MADV_DONTFORK | |||
* avoid accessing CMOS NVRAM from ACPI AML (Gleb Natapov) | |||
** fixes rare reboot failures with Windows | |||
** fixes ACPI error messages in Windows event log | |||
* add mp state for ia64 (Xiantao Zhang) | |||
* add missing prototypes (Jes Sorensen) | |||
* fix compiler warnings (Jes Sorensen) | |||
* add in/out instructions to emulator (Mohammed Gamal) | |||
* use Windows pcr instead of guest's tr for tpr patching cpu id | |||
** fixes hibernate/resume with guest smp | |||
* account for realmode/npt/ept page faults in statistics | |||
* fix locking around dirty log tracking | |||
* flush tlbs after fetching the dirty log | |||
* fix random segfaults with npt (Joerg Roedel) | |||
* fix setting accessed bit on non-speculative sptes | |||
* fix tlb flush during page zap | |||
* slightly optimize event injection with npt | |||
* add MC5_MISC msr support (Joerg Roedel) | |||
** fixes Linux bootup warnings | |||
* make s390 facility bits future proof (Christian Borntraeger) | |||
* improve s390 guest Kconfig help (Christian Borntraeger) | |||
* add cld/std instructions to emulator (Mohammed Gamal) | |||
* fix address overflow in ept (Sheng Yang) | |||
* add statistic for guest irq injections | |||
* remove unnecessary remote tlb flush (Joerg Roedel) | |||
= kvm-74 [28 aug 2008] = | |||
* make real-mode startup state conform to spec | |||
* fix scheduling error in experimental big real mode support | |||
* fix reboot fault handler exception table entry (Eduardo Habkost) | |||
* x86 emulator code cleanup (Roel Kluin) | |||
* fix 'neg r/m' instruction emulation forced to byte size | |||
* fix shadow ptes corruption on i386 hosts running smp guests | |||
* fix kvmtrace ABI breakage (Adrian Bunk) | |||
* enable virtio for ia64 | |||
* add generic shadow page table walker | |||
* allocate internal guest memory as MAP_PRIVATE | |||
* don't call get_user_pages(.force=1) | |||
** paves the way for get_user_pages_fast() | |||
* add mov r, imm instructions to the emulator (Mohammed Gamal) | |||
* realmode emulator testsuite | |||
* ia64 external module support (Xiantao Zhang) | |||
* support tap IFF_VNET_HDR (Mark McLoughlin) | |||
* merge qemu-svn | |||
** improved usb support | |||
** usb auto connect/disconnect | |||
* protect against possible corruption during qemu fork() on older hosts (Marcelo Tosatti) | |||
= kvm-73 [21 aug 2008] = | |||
* merge qemu-svn | |||
** improve qcow2 performance with cache=off | |||
** ide fixes | |||
* ia64 external module (Xiantao Zhang) | |||
* external module compatibility with 2.6.27 hosts | |||
* fix sysenter msrs save/restore (Alexander Graf) | |||
* fix 2.6.26 host support (Nikola Ciprich) | |||
* fix linux-user build (Philippe Gerum) | |||
* virtio-net speedup (Mark McLoughlin) | |||
* fix ./configure with multiple arguments | |||
* support Windows hibernation on non-FlexPriority hosts | |||
* fix makefile dependencies (Sheng Yang) | |||
* fix compiler warnings (Jan Kiszka) | |||
* work around dhclient checksum offload brokenness (Anthony Liguori) | |||
* full swapping support (Andrea Arcangeli) | |||
** needs 2.6.27 hosts | |||
* internal irq ack notification api (Marcelo Tosatti, Amit Shah, Ben-Ami Yassour, Avi Kivity) | |||
* fix pit timer interrupt injection logic (Marcelo Tosatti) | |||
* paravirt guest: query tsc frequency from host (Glauber Costa) | |||
* pci device assignment (Amit Shah, Ben-Ami Yassour, Weidong Han) | |||
** still lacking dma | |||
* fix large page crash on z10 mainframes (Christian Borntraeger) | |||
* stack usage reduction (Dave Hansen, Sheng Yang) | |||
* code cleanup (Sheng Yang) | |||
* fix debug register corruption on Intel hosts (Marcelo Tosatti) | |||
* fix -no-kvm-irqchip | |||
* fix irq acking on pic reset (Marcelo Tosatti) | |||
* ignore spurious timer interrupt acks | |||
* limit device assignment to privileged user (Amit Shah) | |||
* big real mode emulation framework (Mohammed Gamal) | |||
* simpify irq injection (Amit Shah) | |||
* dummy irq ack notifier for ia64 (Xiantao Zhang) | |||
= kvm-72 [28 jul 2008] = | |||
* fix ia64 build breakage (Xiantao Zhang) | |||
* ppc kvmtrace support (Christian Ehrhardt) | |||
* merge qemu-svn | |||
** fixes suspend/resume of multiple nics | |||
** adds Virtual Distributed Ethernet (vde) support | |||
* add 'push mem' to patched tpr instructions | |||
* use host kernel anon_inodes support if available | |||
* robustify signalfd() emulation | |||
* avoid losing the iothread on random signals | |||
* fix test for iothread (Jan Kiszka) | |||
* remove hypercall device (Anthony Liguori) | |||
* remove duplicate monitor command (Anthony Liguori) | |||
* remove unused function declaration (Anthony Liguori) | |||
* remove unnecessary change to TARGET_PAGE_SIZE (Anthony Liguori) | |||
* remove qemu/kvm application decoration (Anthony Liguori) | |||
* add 'info kvm' monitor command (Anthony Liguori) | |||
* s390 libkvm port (Carsten Otte) | |||
* fix compile warning (Carlo Marcelo Arenas Belon) | |||
* fix duplicate #include (Carlo Marcelo Arenas Belon) | |||
* adjust external module for 2.6.27 hosts | |||
* avoid tpr patching when the stack is not valid (Marcelo Tosatti) | |||
** fixes some variant of Windows 2003 SMP | |||
* fix extboot stomping on reserved interrupt vectors (H. Peter Anvin) | |||
* remove unused -translation option (Anthony Liguori) | |||
* fix preemption during copy_from_user_inatomic() on older hosts (Andrea Arcangeli) | |||
* fix ppc cpu initialization (Hollis Blanchard) | |||
* drop shadow ptes on memslot destruction (Marcelo Tosatti) | |||
* improve invalid shadow root page table handling (Marcelo Tosatti) | |||
* simplify mmu page zapping | |||
* simplify interrupt processing on Intel | |||
* remove redundant check for real mode (Mohammed Gamal) | |||
* add clflush emulation (Glauber Costa) | |||
* fix race setting shadow ptes on i386 | |||
* consolidate pic isr clearing into a function | |||
* consolidate exception interrupt vector #defines (Jan Kiszka) | |||
* fix interrupt reinjection in real mode (Jan Kiszka) | |||
* unify guest register save/restore code | |||
* x86 hardware task switching fixes (Marcelo Tosatti) | |||
* optimize vmx by avoiding saving the host stack pointer | |||
* fix interrupts being delayed by instruction emulation | |||
** improves Vista stability | |||
* fix reloading kvm-intel.ko while changing parameters (Sheng Yang) | |||
* fix reboot exception entry build bug (Ingo Molnar) | |||
* ignore no-op DEBUGCTL msr writes (Alexander Graf) | |||
** fixes Netware | |||
* fix irq state leak on ia64 (Julia Lawall) | |||
* s390 fixes (Carsten Otte, Christian Borntraeger, Martin Schwidefsky) | |||
* ppc guest breakpoint support (Hollis Blanchard) | |||
* optimize ppc by not saving host tlb state (Hollis Blanchard) | |||
* reduce ppc guest tlb writes (Hollis Blanchard) | |||
* avoid guest tlb flushes on guest privilege switches (Hollis Blanchard) | |||
= kvm-71 [14 jul 2008] = | |||
* fix virtio isr clearing (Laurent Vivier) | |||
* kvmtrace ppc userspace support (Jerone Young) | |||
* avoid fragmenting virtio-blk transfers (Anthony Liguori, Mark McLoughlin) | |||
* ia64 build fixes (Anthony Xu) | |||
* remove unnecessary virtio-net printout (Marcelo Tosatti) | |||
* remove configure warning about gcc 3 (Carlo Marcelo Arenas Belon) | |||
* rhel 5.2/centos 5.2 host support | |||
* merge qemu-svn | |||
** adds pulseaudio driver | |||
** nbd client/server | |||
* disable cpu emulation by default on ia64 (Xiantao Zhang) | |||
* place test support files in a library (Jerone Young) | |||
* fix qemu monitor screendump | |||
* fix lost interrupt when changing a device irq | |||
** fixes devices going away when disabled and enabled several times | |||
* fix oops on shutdown freeing coalesced mmio page (Akio Takebe) | |||
* optimize segment register access in emulator | |||
* allow run-time enabling of mmu debug | |||
* fix host msr corruption when host preempt is enabled | |||
* fix kvmclock (Gerd Hoffmann) | |||
* rename badly named msrs (Sheng Yang) | |||
* fix incorrect usage of vmcs_config when using ept (Sheng Yang) | |||
* emulate performance counter msrs on Intel (Chris Lalancette) | |||
** allows Linux 2.6.9 guests to boot | |||
* optimize vapic locking when disabled (Marcelo Tosatti) | |||
* don't allocate dirty bitmap for s390 (Catsten Otte) | |||
* fix memory leak on guest exit (Carsten Otte) | |||
* update s390 guest base and limit (Christian Borntraeger) | |||
* optimize access to guest registers (Marcelo Tosatti) | |||
* add memory clobber to hypercalls (Anthony Liguori) | |||
** fixes booting guests compiled with gcc 4.3 | |||
* fix ioapic hang on heavy load (Mark McLoughlin) | |||
* move kvmtrace definitions to common header (Hollis Blanchard) | |||
* fix suspend/resume on AMD (Joerg Roedel) | |||
* make some functions static (Adrian Bunk) | |||
* fix shrinker locking (Marcelo Tosatti) | |||
* fix ept tlb flush (Sheng Yang) | |||
* fix signal handling on uninitialized vcpus | |||
* fix hlt instruction in real mode (Mohammed Gamal) | |||
* check pic irq range (Ben-Ami Yassour) | |||
* add function to inject irqs into guests (Amit Shah) | |||
= kvm-70 [17 jun 2008] = | |||
* improve virtio net performance (Anthony Liguori) | |||
* enable pci slot identification for OS X (Alexander Graf) | |||
* fix guest reset (Jan Kiszka) | |||
* code cleanups (Jan Kiszka) | |||
* fix userspace compilation on older kernels (Chris Wright) | |||
* support running on 2.6.16 hosts (Andrea Arcangeli) | |||
** including SLES 10 | |||
* generate mptable even for uniprocessor guests | |||
** helps esx get further along | |||
* fix corrupted breakpoints (Jerone Young) | |||
* on_vcpu() mechanism to execute a function on a vcpu thread | |||
* fix 'info registers' monitor command | |||
* fix vcpu register access livelock when a vcpu is spinning | |||
* fix stopping on debug events (Jan Kiszka) | |||
* fix livelocks in guest debugger (Jan Kiszka) | |||
* add mtrr support | |||
** helps esx limp a bit more | |||
* fix incorrect pmtimer overflow interrupt generation | |||
* add 'push imm' instruction to testsuite | |||
* fix on_vcpu() during guest debug (Jan Kiszka) | |||
* document boot option for drive flag (Carlo Marcelo Arenas Belon) | |||
* coalesced mmio support (Laurent Vivier) | |||
** should speed up some workloads | |||
* allow kprobes to coexist with preempt notifier emulation (Andrea Arcangeli) | |||
* allow virtio devices to reset themselves (Marcelo Tosatti) | |||
* asynchronous virtio storage device (Marcelo Tosatti) | |||
** should improve performance | |||
* fix deadlock waiting for I/O completion | |||
* merge qemu-svn | |||
** remove dependency on gcc 3 | |||
** vnc client segfault fix | |||
** fix vnc problems on resize | |||
** qemu-nbd tool | |||
* fix libkvm memory slot destruction api (Ben-Ami Yassour) | |||
* enable tpr optimization for smp | |||
** should drastically speed up Windows XP SMP guests | |||
* big-endian kvmtrace support (Li Tan) | |||
* remove unneeded variable (Glauber Costa) | |||
* convert acpi tables to use the C preprocessor for less repetition | |||
* external module compatibility for NMI (Alexander Graf) | |||
* fix live migration with new on_vcpu() calls | |||
* fix false flooding when a pte points to a page table | |||
** improves 2.4 pae guests with CONFIG_HIGHPTE | |||
* enable NMI support on Intel (Sheng Yang) | |||
* fix zero extension during mmio on ia64 (Jes Sorensen) | |||
* fix hypercall return value on AMD | |||
** fixes running CONFIG_KVM_GUEST guests | |||
* s390: use yield() instead of schedule() (Christian Borntraeger) | |||
* s390: fix locking order problem (Christian Borntraeger) | |||
* s390: handle machine checks while guest is running (Christian Borntraeger) | |||
* s390: fix interrupt delivery (Carsen Otte) | |||
* s390: send program check on access error (Carsen Otte) | |||
* s390: fix race when idling (Carsen Otte) | |||
* ppc: add lwzx/stwz instruction emulation (Hollis Blanchard) | |||
* ppc: code cleanup (Hollis Blanchard) | |||
* ppc: report bad gfns (Hollis Blanchard) | |||
* optimize pio path slightly | |||
* improve segment register ordering | |||
* migrate pit timer on vcpu migration (Marcelo Tosatti) | |||
* emulate jmp far instruction (Guillaume Thouvenin) | |||
* emulate mov reg, imm instruction (Guillaume Thouvenin) | |||
* emulate mov reg, sreg instruction (Guillaume Thouvenin) | |||
* optimize mmu page prefetching | |||
* emulate push imm instruction | |||
* avoid mmu page prefetching on AMD | |||
* allow VMware Server to take over vmx when unloading the module (Eli Collins) | |||
* avoid spinning during large guest teardown | |||
* fix ioapic interrupt sharing (Marcelo Tosatti) | |||
* fix crash on resume from suspend to ram (Andrea Arcangeli) | |||
* fix race between timer migration and vcpu migration (Marcelo Tosatti) | |||
* close timer injection race when entering guest mode (Marcelo Tosatti) | |||
* fix reverse map corruption with large pages (Marcelo Tosatti) | |||
* fix large page pte updates on non-pae guests (Marcelo Tosatti) | |||
* avoid timer injection if timer already pending (Marcelo Tosatti) | |||
* avoid linear rip calculation if not reporting (Glauber Costa) | |||
* fix host oops on guest userspace access to guest page table | |||
* improve emulation failure reporting | |||
* emulate nop and xchg reg, acc (Mohammed Gamal) | |||
* handle undecoded rex.b when r/m = 5 | |||
* simplify r/m and sib decoding | |||
* simplify relative rip decoding | |||
* avoid segment adjust for lea instruction | |||
= kvm-69 [19 may 2008] = | |||
* fix kvm guest clock compile error without apic (Glauber Costa) | |||
* support PIT mode 3 (Aurelien Jarno) | |||
** needed by GNU Hurd | |||
* fix host oops emulating smsw on AMD | |||
* fake performance counter MSRs on AMD (Chris Lalancette) | |||
** fixes RHEL 4 guests | |||
* fix virtio compile error on s390 (Heiko Carstens) | |||
* fix hlt emulation when PIT is running but not injecting interrupts (Marcelo Tosatti) | |||
* ditto for local apic (Marcelo Tosatti) | |||
* fix kernel and userspace structure name clash on ia64 (Xiantao Zhang) | |||
* fix GVMM module including non-PIC objects (Xiantao Zhang) | |||
* 'make mrproper' fix (Andrew Morton) | |||
* fix host oops on emergency reboot when hitting virt instructions | |||
* simplify host cpu unplug | |||
* fix kvm_vcpu_block() state race (Marcelo Tosatti) | |||
* set iosapic pin count to 48 for ia64 (Xiantao Zhang) | |||
* ppc: fix compile warning (Hollis Blanchard) | |||
* ppc: fix lost simultaneous interrupts (Hollis Blanchard) | |||
* ppc: log failed DCR accesses (Hollis Blanchard) | |||
* ppc: order IRQ bit numbers as per docs (Hollis Blanchard) | |||
* ppc: remove IRQ polarity code (Hollis Blanchard) | |||
* ppc: remember state of level-triggered interrupts (Hollis Blanchard) | |||
* ppc: emulate pci controller on 440 SoC (Hollis Blanchard) | |||
* ppc: add pci controller to bamboo platform (Hollis Blanchard) | |||
* external module compatibility updates | |||
* merge qemu-svn | |||
** fix CVE-2007-1320 - Cirrus LGD-54XX "bitblt" heap overflow | |||
** allow boot device change from the monitor | |||
** reduce spurious vga updates | |||
** fix CVE-2008-2004 - format guessing vulnerability | |||
* remove merge conflict leftover (Carlo Marcelo Arenas Belon) | |||
= kvm-68 [4 may 2008] = | |||
* Intel EPT support (Sheng Yang) | |||
* Code cleanups (Harvey Harrison) | |||
* Fix task switch busy bit setting (Izik Eidus) | |||
* Reduce guest idle cpu usage on ppc (Hollis Blanchard) | |||
* Support floating point instructions on ppc (Christian Ehrhardt) | |||
* Fix lmsw emulation | |||
** fixes host oops on AMD | |||
* Add PIT mode 4 support (Marcelo Tosatti) | |||
** fixes DragonflyBSD | |||
* Avoid spurious exceptions on state reload (Jan Kiszka) | |||
* Add SVM kvmtrace support (Joerg Roedel) | |||
* Avoid schedule-in-atomic on 2.6.26 hosts (Andrea Arcangeli) | |||
* Handle vma regions with no backing page (Anthony Liguori) | |||
** yet another step on the way to pci device assignment | |||
* move external module compatibility code into .c file | |||
* build: sync non-x86 kvm headers | |||
* avoid using kernel headers; use installed libc headers instead | |||
* don't exit iothread berfore all vcpus are stopped (Dor Laor) | |||
* libkvm uninitialized variable fix (Marcelo Tosatti) | |||
* remove old user/config.mak (Jerone Young) | |||
* fix vcpu startup race (Anthony Liguori) | |||
* dump all libkvm errors to stderr (Jan Kiszka) | |||
* fix cross-compilation (Jerone Young) | |||
* fix kvm_show_code() to work on ROM and real-mode (Jan Kiszka) | |||
* allow qemu -kernel option with extboot (Mark McLoughlin) | |||
= kvm-67 [28 apr 2008] = | |||
* s390/ia64: compile fix (Christian Borntraeger) | |||
* s390: change virtio interrupt to follow arch specification (Christian Borntraeger) | |||
* close vcpu refcounting race (Al Viro) | |||
* code cleanups (Hollis Blanchard, Christian Borntraeger) | |||
* ppc 44x support (Hollis Blanchard, Jerone Young) | |||
* reduce cr8 intercepts on AMD (Joerg Roedel) | |||
** speeds up Vista x64 | |||
* fix locking in paravirt mmu support (Marcelo Tosatti) | |||
* fix ppc build on non-44x (Stephen Rothwell) | |||
* fix PIT time-drift compensation with multiple guests (Marcelo Tosatti) | |||
* merge qemu-svn | |||
* spin up vcpu threads before setting lapic contents | |||
* pass disk geometery to extboot loader (Ryan Harper) | |||
* separate header copying from source copying in 'make sync' | |||
* implement 'hypervisor present' cpuid bit | |||
* fix address truncation on ia64 (Jes Sorensen) | |||
* handle nic/storage hotplug failure gracefully (Chris Wright) | |||
* more kvm_stat display options | |||
* fix qemu system_powerdown with Linux guests | |||
= kvm-66 [16 apr 2008] = | |||
* adjust external module for 2.6.25 module locations (Anthony Liguori) | |||
* fix userspace compilation failure without kernel pit (Joerg Roedel) | |||
* kvmtrace performance monitoring mechanism (Eric Liu) | |||
* stop all vcpus before saving their state (Marcelo Tosatti) | |||
** fixes smp live migration | |||
* save/restore kernel apicbase (Marcelo Tosatti) | |||
* block SIG_IPI signals (Marcelo Tosatti) | |||
* smsw mem16, lmsw mem16 emulation and unit tests | |||
* fix compile warnings (Jerone Young) | |||
* fix reset with iothread | |||
* ia64 architecture support (Xiantao Zhang, Anthony Xu) | |||
* don't assume guest pages are backed by a 'struct page' (Anthony Liguori) | |||
** needed for pci device assignment | |||
* register kvm's ioctl range | |||
* fix hardware task switching buglet (Izik Eidus) | |||
* fix mce handling on AMD (Joerg Roedel) | |||
* do hardware task switching in hardware when NPT is enabled (Joerg Roedel) | |||
* fix timer race waking up a halted vcpu with smp (Marcelo Tosatti) | |||
* fix irq race leading to irqs delivery delays (Marcelo Tosatti) | |||
* fix triple fault handling on AMD | |||
* fix lea instruction emulation | |||
= kvm-65 [6 apr 2008] = | |||
* fix hotplug build for non-x86 (Xiantao Zhang) | |||
* ignore reads from the apic EOI register (Glauber Costa) | |||
** fixes Linux 2.6.25-rclate bootup problems | |||
* compile fixes (Carlo Marcelo Arenas Belon) | |||
* fix ftruncate() on hugetlbfs use on older Linux hosts (Marcelo Tosatti) | |||
* endianness fix virtio-block (Anthony Liguori) | |||
** fixes virtio-blk on ppc | |||
* refactor in-kernel PIT to be a separate device (Anthony Liguori) | |||
* separate thread for I/O completions and timers (Marcelo Tosatti) | |||
* fix vmmouse smp (Anthony Liguori) | |||
* fix loading uninitialized variable into apic registers (Marcelo Tosatti) | |||
** fixes apic being disabled on smp Linux guests running X | |||
* disable kvm clock on Voyager or SGI Visual WS (Randy Dunlap) | |||
* s390 support (Carsten Otte, Martin Schwidefsky, Christian Borntraeger, Heiko Carstens) | |||
* fix large pages (Marcelo Tosatti) | |||
* speedup msr processing on Intel via msr bitmap (Sheng Yang) | |||
* add slab shrinker support (Izik Eidus) | |||
** reduces nonswappable footprint under memory pressure | |||
* code cleanup (Joerg Roedel) | |||
* vm refcounting (Izik Eidus) | |||
* only mark a page as accessed if it was really accessed by the guest | |||
* drop slots_lock while in guest mode | |||
** fixes long latencies with iothread | |||
* prepopulate guest pages only after write-protecting them (Marcelo Tosatti) | |||
** fixes smp race leading to guest spinning | |||
= kvm-64 [27 mar 2008] = | |||
* kvm clock fixes (Glauber Costa) | |||
* kvm clock enable/disable bit (Glauber Costa) | |||
* in kernel pit model (Sheng Yang) | |||
** improves timing accuracy for certain guests | |||
* fix bad tss handling causing ioperm() to fail on the host | |||
* paravirt mmu support (Marcelo Tosatti, Anthony Liguori, Avi Kivity) | |||
* set accessed bit on non-speculative shadow ptes | |||
** minor performance improvement | |||
* fix init_rmode_tss() locking (Marcelo Tosatti) | |||
* fix dirty bit being lost when write permissions are removed from a page (Izik Eidus) | |||
* code cleanups | |||
* module option for disabling flexpriority | |||
* fix apic access page memory leak | |||
* hardware task switching support (Izik Eidus) | |||
** for freedos and similar guests | |||
* fix extboot failures under certain conditions (Anthony Liguori) | |||
* export vcpu thread ID via qemu monitor (Glauber Costa) | |||
** can be used to implement vcpu->cpu pinning | |||
* pci hotplug (Marcelo Tosatti) | |||
** can now add and remove nics and drives dynamically | |||
* fix virtio memory region sizing (Marcelo Tosatti) | |||
* fix segfault on disabled virtio nic (Dor Laor) | |||
* fix sci interrupt on pmtimer wraparound (Dor Laor, Yaniv Kamay) | |||
* fix qemu exit on pci hotplug failure (Ryan Harper) | |||
* fix 'make clean' destroying configuration (Ryota Ozaki) | |||
* ppc userspace updates (Jerone Young) | |||
* improve IDE and SCSI DMA speed | |||
= kvm-63 [5 mar 2008] = | |||
* portability: make room for the ia64 register stack (Xiantao Zhang) | |||
* fix leak when setting the pv clock to an invalid address (Marcelo Tosatti) | |||
* detect vcpu triple faults (Joerg Roedel) | |||
* fix race when instantiating a shadow pte | |||
* fix host crash on guest kexec | |||
* code cleanups (Harvey Harrison) | |||
* better tsc handling on Intel hosts with stable tscs | |||
* cpu hotplug (Glauber Costa) | |||
* merge qemu-cvs | |||
** new curses display option | |||
* change -hugetlb-path to -mem-path (Anthony Liguori) | |||
* increase pci support from 6 slots to 32 slots | |||
* document ./configure --disable-cpu-emulation (Jerone Young) | |||
* fix powerpc cpu initialization (Jerone Young) | |||
* simplify host_cpuid() assembly code | |||
= kvm-62 [26 feb 2008] = | |||
* fix oops running external module on 2.6.25 due to mmdrop (Andrea Arcangeli) | |||
* backward compatibility for 2.6.25 desc_struct changes | |||
* fix memory alias mixup (Uri Lublin) | |||
* add file:// migration protocol (Uri Lublin) | |||
* fix reading from character devices with flow control (Jan Kiszka) | |||
* large host page support (Marcelo Tosatti) | |||
* fix screen corruption with high resolutions (Andreas Winkelbauer) | |||
* implement vmware vga for kvm (Soren Hansen, Anthony Liguori) | |||
* even more resolutions for -std-vga (Andreas Winkelbauer) | |||
* code cleanups (Carlo Marcelo Arenas Belon, Harvey Harrison) | |||
* allow up to 16 vcpus (Anthony Liguori, Avi Kivity) | |||
* allow up to 16 memory slots | |||
* improve vcpu_run error reporting | |||
* fix host crash on hosts without EFER (Intel Core not 2s) | |||
* drop kvm private segment descriptor in favor of Linux' desc_struct | |||
* stat counter for hypercalls (Amit Shah) | |||
* fake values for MSR_PERF_STATUS (Alexander Graf) | |||
** needed for Darwin/OS X | |||
* better root pagetable unpinning (Marcelo Tosatti) | |||
* paravirt clock fixes (Glauber Costa, Marcelo Tosatti) | |||
* avoid host hang when guest sets APIC timer to zero | |||
** also fixes live migration of Windows 2000 guests | |||
* fix RHEL 5 i386 smp boot due to timer interrupts being routed to all vcpus | |||
= kvm-61 [19 feb 2008] = | |||
* paravirtualized clock (Glauber de Oliveira Costa) | |||
* mmu debug compile fix (Marcelo Tosatti) | |||
* last branch record virtualization on AMD (Joerg Roedel) | |||
* fix Windows x64 installer crash on AMD (Joerg Roedel) | |||
* use new kvm semaphore instead of mmap_sem (Izik Eidus) | |||
** fixes potential deadlock | |||
* fix type in vmx header (Ryan Harper) | |||
* make the supported cpuid ioctl system-wide instead of per-vm | |||
* fix setting cr0 from userspace (Paul Knowles) | |||
* add group decoding support to the x86 emulator | |||
* nested paging support on AMD (Joerg Roedel) | |||
* allow access to EFER on 32-bit hosts (Joerg Roedel) | |||
** allows using the nx bit | |||
* fix copy_from_user_inatomic() call non-preemptible hosts (Andrea Arcangeli) | |||
* fix smp Linux on AMD (Joerg Roedel) | |||
* make the code more ppc friendly (Hollis Blanchard) | |||
* add virtual processor identifier support (VPID) on Intel (Sheng Yang) | |||
* don't expose pio page to host userspace on non-x86 | |||
* decouple mmio from shadow page tables | |||
* make function pointer tables constant (Jan Engelhardt) | |||
* merge qemu-cvs | |||
** reverse vnc connections | |||
** e1000 nic emulation | |||
** more audio options | |||
** usb serial device emulation | |||
** cdrom/dvd improvements | |||
** timer tick reduction | |||
* e1000 pxe boot rom (Alexey Eremenko) | |||
* fix 'make clean' | |||
* merge bios from boch-cvs | |||
** adds dmi tables | |||
** enables acpi on 32-bit Linux guests | |||
* workaround qemu tcg breakage on non-x86 (Anthony Liguori, Xiantao Zhang) | |||
* adjust external module for removal of fastcall in mainline (Andrea Arcangeli) | |||
* improve qemu main loop | |||
* fix live migration with tpr optimization | |||
* fix external module miscompile with newer kernels (Andrea Arcangeli) | |||
* fix external module include directory priority problems (Andrea Arcangeli) | |||
* fix 32-bit host userspace on 64-bit host kernels | |||
* fix preempt notifier emulation clash with host hardware debug registers (Andrea Arcangeli) | |||
* adjust external module for 2.6.25 | |||
* fix ioapic live migration not transferring some registers (Chris Lalancette) | |||
* separate tpr optimization paths for smp and up | |||
* pio emulation on mmio for ia64 (Xiantao Zhang) | |||
* fix qemu timer rearm fallout from last merge (Anders Melchiorsen) | |||
* clean up kvm/qemu interaction (Anthony Liguori) | |||
* improve ppc dcr handling (Jerone Young) | |||
* fix 64-bit guest migration failure due to bad lm_capable_kernel init (Uri Lublin) | |||
* fix bios parallel build (Carlo Marcelo Arenas Belon) | |||
* update virtio abi (Anthony Liguori) | |||
* support virtio abi versioning (Anthony Liguori) | |||
* add powerpc kvm/qemu support (Jerone Young) | |||
* support ppc 440 "bamboo" board (Jerone Young) | |||
* improve migration error handling (Chris Lalancette) | |||
* enable cache on reset in bios | |||
* fix up testsuite warnings (Bernhard Kaindl) | |||
* fix aio deadlocks with smp guests | |||
= kvm-60 [23 jan 2008] = | |||
* fix compilation with older kernels (Andi Kleen) | |||
* virtio host support (Anthony Liguori, Dor Laor) | |||
** includes block and network devices | |||
* fix power management timer overflow handling | |||
* fix qemu running with older kernels | |||
* boot from scsi/virtio (Anthony Liguori) | |||
* add 1280x800 resolution to -std-vga | |||
* fix acpi sci interrupt generation | |||
* compile fixes (Carlo Marcelo Arenas Belon) | |||
* update ide cdrom to match qemu (Carlo Marcelo Arenas Belon) | |||
* fix extboot on older gcc (Christian Ehrhardt) | |||
* powerpc dcr tests (Christian Ehrhardt) | |||
* rtl8139 is now the default nic type (Guido Guenther) | |||
* acpi power button support (Guido Guenther) | |||
* powerpc testsuite harness (Hollis Blanchard) | |||
* powerpc libkvm support (Jerone Young) | |||
* bump piix4 to rev 3 to avoid slowdown reading pm timer (Marcelo Tosatti) | |||
* migration updates (Uri Lublin) | |||
* ia64 smp support in qemu (Xiantao Zhang) | |||
* fix acpi vapic page on save/restore | |||
* move x86 fpu to x86 specific header (Christian Ehrhardt) | |||
* minor shadow code simplification(Eddie Dong) | |||
* optimize pae pte updates (Eddie Dong, Eric Liu) | |||
* simplify shadow hash table indexing (Eddie Dong) | |||
* kvm_para.h compile fix (Glauber de Oliveira Costa) | |||
* dirty page tracking fix (Izik Eidus) | |||
* fix svm lazy fpu switching (Joerg Roedel) | |||
** fixes Vista x64 on AMD | |||
* only allow vmcall/vmmcall on #UD traps (Sheng Yang) | |||
* fix unbounded latency due to a race in the guest entry code | |||
** with this fix and a realtime kernel, sub 50usec worst case latencies can be achieved | |||
* move apic timer migration to preemptible code | |||
= kvm-59 [3 jan 2008] = | |||
* merge qemu-cvs | |||
** -drive cache=[on|off] option | |||
** adds scsi passthrough | |||
* ide lba48 support for 120GB+ disk images | |||
* widescreen resolutions for -std-vga | |||
* libkvm compile fixes (Carlo Marcelo Arenas Belon) | |||
* mmu scaling (Marcelo Tosatti, Avi Kivity) | |||
= kvm-58 [27 dec 2007] = | |||
* add mmu statistics | |||
* log data on write to unimplemented msr | |||
* fix memory corruption (mapcount error) after host fork() (Izik Eidus) | |||
* improve preempt notifier emulation on older kernels (Andrea Arcangeli) | |||
* refactor IDE CHS guessing (Anthony Liguori) | |||
* testsuite improvements | |||
* apic tpr acceleration for Windows guests | |||
** disabled on smp for now | |||
* fix warnings due to qemu merge (Carlo Marcelo Arenas Belon) | |||
* improve support for older kernels (Carlo Marcelo Arenas Belon) | |||
* icache sync in qemu after dma for more archs (Christian Ehrhardt) | |||
* simplify mmio callback (Christian Ehrhardt) | |||
* align gdbstub with qemu-cvs (Jan Kiszka) | |||
* fix compile if kernel/include/asm/ preexists (Sheng Yang) | |||
* fix migration on i386 hosts (Uri Lublin) | |||
* qemu ia64 adjustments (Zhang Xiantao) | |||
= kvm-57 [18 dec 2007] = | |||
* warn when emulating preempt notifiers | |||
* add pio port 0x80 access test to testsuite | |||
* merge qemu-cvs | |||
* add rtc emulation for ia64 (Xiantao Zhang) | |||
* fix qemu memory allocation off-by-one | |||
* new kernel source layout (virt/kvm/, arch/x86/kvm/) | |||
* coalesce remote tlb flushes when write-protecting guest pages (Eddie Dong) | |||
* lapic debug compile fix (Joerg Roedel) | |||
* fix smp mmu shadow instantiation race (Marcelo Tosatti) | |||
* atomic cmpxchg8b on i386 (Marcelo Tosatti) | |||
* throttle vmx_intr_assist() printk (Ryan Harper) | |||
* portability (Xiantao Zhang) | |||
= kvm-56 [14 dec 2007] = | |||
* Generalize exception handling mechanism | |||
* fix x86 emulator eflags handling | |||
* avoid exit to userspace on cr8 write if using kernel lapic on Intel | |||
* fix stack instructions emulation in 64-bit mode | |||
** fixes Vista x86 | |||
*** except on Woodcrests | |||
* trap cr8 access on amd | |||
* mmu simplification | |||
* fix setting nx bit on shadow pte | |||
* fix inherited mmu permissions | |||
* more portability work (Hollis Blanchard, Xiantao Zhang) | |||
* add cr8 to 'mov cr' instruction emulation (Joerg Roedel) | |||
* exit to userspace on cr8 write if not kernel apic on amd (Joerg Roedel) | |||
* atomically set accessed and dirty bit on guest ptes (Marcelo Tosatti) | |||
* use ->fault() vma op instead of ->nopage() | |||
* remove abi 10 libkvm compatibility | |||
* add some x86 emulator tests | |||
* add many mmu access tests | |||
* fix rpm build on Fedora 8 (Dan Kenigsberg) | |||
* fix 'make sync' on debian and derivatives (Ryan Harper) | |||
* fix live migration (Uri Lublin, Izik Eidus) | |||
* initial ia64 userspace (Xiantao Zhang) | |||
= kvm-55 [4 dec 2007] = | |||
* remove old hypercall driver (Anthony Liguori) | |||
* disable dirty page logging for main memory (Izik Eidus) | |||
* fix incorrect page count calculation for dirty logging (Izik Eidus) | |||
* improve testsuite 'make clean' (Neo Jia) | |||
* compile fix (Sheng Yang) | |||
* reorganize x86 emulator main switch | |||
* don't bypass mmu on pae cr3 reload if pdptrs changed | |||
** fixes Solaris x86 | |||
* use common defines for EFER (Carlo Marcelo Arenas Belon) | |||
* portability (Xiantao Zhang) | |||
* fix kvm_init() error path (Xiantao Zhang) | |||
* ia64 iosapic support (Xiantao Zhang) | |||
= kvm-54 [27 nov 2007] = | |||
* fix fpu leak on AMD (Amit Shah) | |||
** (on kvm-53, lazy fpu was disabled, so this just improves performance) | |||
* prefetch instruction bytes when emulating | |||
* implement guest page fault bypass on nonpae | |||
** should speed up some 32-bit guests | |||
* add a bunch of statistics | |||
* avoid unnecessary remote tlb flushes | |||
** improves guest smp scaling | |||
* avoid mmu reloads on guest tlb flushes | |||
* mmu code simplification | |||
* disallow using kvm after fork() | |||
* fix failures while injecting external interrupts in real mode | |||
** fixes Mandrake 9 regression | |||
* fix multiple address- and operand- size override prefix emulation | |||
* infrastructure for using host cpu features on guest (Dan Kenigsberg) | |||
** not used yet by qemu | |||
* cmps instruction emulation (Guillaume Thouvenin) | |||
** allows OpenBSD to boot | |||
* cleanups (Hollis Blanchard) | |||
* fix potential memory leak in real-mode smp (Izik Eidus) | |||
* reduce unnecessary dirtying of pages (Izik Eidus) | |||
* mark guest pages as accessed with the Linux lru (Izik Eidus) | |||
* more portability work (Jerone Young, Xiantao Zhang) | |||
* allow new vmx features even if not using in-kernel apic (Sheng Yang) | |||
* refactor shadow mmu size calculation (Xiantao Zhang) | |||
* improve testsuite | |||
* beginning of x86 emulator unit test | |||
* fix compile warnings (Carlo Marcelo Arenas Belon) | |||
* log module version in dmesg on load | |||
= kvm-53 [20 nov 2007] = | |||
* testsuite: exit on end of test | |||
* batch mode for kvm_stat script | |||
* compile fixes (Carlo Marcelo Arenas Belon, Joe Perches) | |||
* portability (Jerone Young, Zhang Xiantao) | |||
* disable lazy fpu on AMD (Amit Shah) | |||
** should fix instability on AMD | |||
** will cause performance regression, fix in progress | |||
* x86 emulator: fix 'push r/m' emulation (Amit Shah) | |||
* register use reduction in vmx guest entry | |||
* infrastructure for per-vm stats | |||
** extends existing per-vcpu stats | |||
* add mmu, state switch, emulation statistics | |||
* use copy_{to,from}_user to access guest memory (Izik Eidus) | |||
* simplify access to guest page tables (Izik Eidus) | |||
* fix entry to real mode with segment bases beyond 1MB (Jan Kiszka) | |||
* finally kill last use of cr2 in emulator (Sheng Yang) | |||
= kvm-52 [12 nov 2007] = | |||
* fix efer reload host crash on T2600 and similar processors | |||
* revert sleepy interrupt injection | |||
** fixes "Fault when IDT_Vectoring" | |||
* atomically inject real-mode interrupts | |||
* wbinvd exiting on newer Intel processors (Eddie Dong) | |||
** fixes real-time issues | |||
* fix call/jmp instruction emulation (Izik Eidus) | |||
** fixes Vista x64 installation | |||
* fix save/restore/migrate with multiple nics | |||
* fix build on i386 uniprocessor w/ no ioapic hosts | |||
* fix smp_call_function_single() emulation on older hosts | |||
** fixes smp guests not booting on RHEL 5 hosts | |||
* make qemu/kvm memory allocation match plain qemu more closely (Izik Eidus) | |||
** fixes issues with large memory guests | |||
* libkvm compile fixes (Carlo Marcelo Arenas Belon, Jerone Young) | |||
= kvm-51 [7 nov 2007] = | |||
* fix some x86 emulator one-byte insns (fixes W2K3 installer again) | |||
* fix host hangs with NMI watchdog on AMD | |||
* fix guest SMP on AMD | |||
* fix dirty page tracking when clearing a guest page (Dor Laor) | |||
* more portability work (Hollis Blanchard, Jerone Young) | |||
* fix FlexPriority with guest smp (Sheng Yang) | |||
* improve rpm specfile (Akio Takebe, Avi Kivity) | |||
* fix external module vs portability work (Andrea Arcangeli) | |||
* remove elpin bios due to license violation | |||
* testsuite shutdown pio port | |||
* don't advertise svm on the guest | |||
* fix reset with kernel apic (Markus Rechberger) | |||
= kvm-50 [2 nov 2007] = | |||
* fix smp_call_function_mask() emulation on preemptible kernels | |||
* move libkvm into own directory (Hollis Blanchard) | |||
* fix save/restore/migrate for new memory slot management (Uri Lublin) | |||
* compile fixes (Uri Lublin, Avi Kivity) | |||
* fix recursive locking on mmap() (Anthony Liguori) | |||
* remove some cr2 dependencies from x86 emulator | |||
* further simplify x86 emulator | |||
* more portability work (Carsten Otte, Hollis Blanchard) | |||
* Intel FlexPriority support (Sheng Yang) | |||
* fix dirty page tracking on aliased pages (Uri Lublin) | |||
= kvm-49 [29 oct 2007] = | |||
* Fix PIT time-drift-fix (only with -no-kvm-irqchip) (Dan Kenigsberg) | |||
* Fix vnc auth error with clients <= 3.7 protocol (Dan Kenigsberg) | |||
* Don't spin on hlt with interrupts disabled (Dor Laor) | |||
* Fix pxe boot (Izik Eidus) | |||
* Hide the Intel real-mode tss from userspace (Izik Eidus) | |||
* Automatic memory slot management for libkvm (Izik Eidus) | |||
* Fix problem with std-vga and 4GB guests (Izik Eidus) | |||
* External module compat for smp_call_function_mask() (Laurent Vivier) | |||
* More portability work (Jerone Young, Christian Borntraeger, Zhang Xiantao) | |||
* Fix sleep-in-atomic-context during vcpu init | |||
* Fix 'push imm8' emulation (fixes W2K3 installer) | |||
* Intercept invd and wbinvd on AMD | |||
* Reduce emulator dependency on cr2 (mov abs insns) | |||
* Move page fault processing to common code | |||
* Fix rmap memory consumption oops due to increased rmap usage with swap | |||
* Fix potential memory leak with kernel-allocated memslots (Izik Eidus) | |||
* Export memory slot allocation mechanism (Izik Eidus) | |||
* Add kernel-private memslots (Izik Eidus) | |||
* Fix local apic divide-by-zero (Kevin Pedretti) | |||
* Improve local apic timer wraparound handling (Kevin Pedretti) | |||
* Use newly available smp_call_function_mask() (Laurent Vivier) | |||
* Micro-optimize register usage on vmentry/vmexit (Laurent Vivier) | |||
* Cleanups, compilation fixes (Akio Takebe, Anthony Liguori, Avi Kivity) | |||
= kvm-48 [18 oct 2007] = | |||
* use precise cpu accounting on ppc and s390 (Christian Borntraeger) | |||
* make guest time accounting actually work (Laurent Vivier) | |||
* fix host memory corruption when setting the guest dirty bit | |||
* allow swapping with older userspace (Anthony Liguori) | |||
* allow custom memory setup using libkvm (Gerd Hoffmann) | |||
= kvm-47 [18 oct 2007] = | = kvm-47 [18 oct 2007] = | ||
* Reset fixes (Eddie Dong, | * Reset fixes (Eddie Dong, Avi Kivity) | ||
* Portability work (Carsten Otte) | * Portability work (Carsten Otte) | ||
* Cleanups (Anthony Liguori, Laurent Vivier) | * Cleanups (Anthony Liguori, Laurent Vivier) | ||
Line 454: | Line 1,924: | ||
__NOTOC__ | __NOTOC__ | ||
[[Category:Architecture]][[Category:Docs]][[Category:Historical]] |
Latest revision as of 10:10, 31 May 2015
kvm-88 [12 july 2009]
- merge upstream qemu.git
- virtio indirect ring entries
- improves block performance for newer Linux guests
- -net tap,sndbuf=... option for improving udp performance
- msi-x support
- sdl window resize
- more flexible -net user configuration
- -cpu host to pass through all host cpu features
- multiboot support for -kernel
- virtio indirect ring entries
- fix KVM_GET_SUPPORTED_CPUID feature usage (Andre Przywara)
- fix register contents after SIPI (Gleb Natapov)
- re-enable device assignment (Markus Armbruster)
- fix ia64 build (Markus Armbruster)
- fix migration for virtio-net version > 7 (Michael S. Tsirkin)
- merge more code with upstream (Glauber Costa)
- fix vnet_hdr checks (Mark McLoughlin)
- fixes broken tap networking with rtl8139 and e1000
- move extboot to standard optionrom location (Jan Kiszka)
- emulate 32-bit syscall/sysenter instructions on 64-bit guests (Andre Przywara)
- allows cross-vendor live migration with 32-bit userspace on 64-bit kernel
- fix s390 memslot initialization for userspace_addr != 0 (Christian Borntraeger)
- allow s390 stfle instruction to be executed by guest (Christian Borntraeger)
- prepare memory slot data structures for multiple large page sizes (Joerg Roedel)
- correct missing locking in PIT/IRQCHIP/SET_BSP_CPU ioctl paths (Marcelo Tosatti)
- do not allow invalid mtrr/pat settings (Marcelo Tosatti)
- ignore some more AMD system configuration msrs (Andre Przywara)
- introduce module parameter for ignoring unknown msrs (Andre Przywara)
- fix ftrace build when kvm is built into the kernel
- convert powerpc marker probes to tracepoints (Marcelo Tosatti)
- drop old kvmtrace code (Marcelo Tosatti)
- document kvm_io_device locking (Michael S. Tsirkin)
- switch coalesced mmio, PIT creation, io bus to slots_lock (Michael S. Tsirkin)
- fix locking imbalance (Jiri Slaby)
- irq tracing
- mmio tracing
- irqfd deassign (Gregory Haskins)
- x2apic support (Gleb Natapov)
- avoid redelivery of edge triggered interrupt before next edge (Gleb Natapov)
- fixes keyboard issues running Windows XP x64 smp installer
- avoid pit division by zero (Marcelo Tosatti)
- fix KVM_GET_MSR_INDEX_LIST user memory corruption (Jan Kiszka)
- drop old cr3 checks in favor of new checks (Jan Kiszka)
- mmu tracing
- basic API documentation
- ignore msi requests if level = 0 (Michael S. Tsirkin)
- ioapic/pic/msi tracing (Gleb Natapov)
- don't kick vcpu if not in guest mode (Gleb Natapov)
kvm-87 [25 june 2009]
- merge qemu upstream (Mark McLoughlin, Avi Kivity)
- tune and view live migration progress
- allow setting qcow2 cluster size
- http protocol for images
- qcow2 speedups
- networking improvements
- fix -no-shatdown command line option (Daniel Gollub)
- fix warnings on 32-bit hosts (Michael S. Tsirkin)
- use a bitmap for tracking used interrupts (Alex Williamson)
- support running without vga option rom (Jan Kiszka)
- make kvmtrace_format mode distro friendly (Eduardo Habkost)
- fix mac annoucement after live migation with virtio net (Gleb Natapov)
- merge cpu state more compatible with upstream qemu (Jan Kiszka)
- improve large page memory layout
- only initialize lapic after the vcpu (Glauber Costa)
- clean up cpuid feature trimming (Glauber Costa)
- avoid harmless msr warnings (Marcelo Tosatti)
- have bios read read MADT to implement acpi _MAT (Gleb Natapov)
- fix tpr patching to get cpu index from Windows PCR (Gleb Natapov)
- separate kvm from pic implementation (Glauber Costa)
- remove cpu index in libkvm/qemu interface (Gleb Natapov)
- halt guest instead of aborting on error
- fix dma on ia64 (Jes Sorensen)
- fix MADT, RSDT creation (Beth Kon)
- start libkvm removal (Glauber Costa)
- make qemu-kvm implementation closer to upstream (Gleb Natapov)
- move acpi processor descriptions to ssdt (Jes Sorensen)
- machine check exception support (Huang Ying)
- not userspace visible yet
- msr cleanups (Jaswinder Singh Rajput)
- fix cpuid error handling (Mark McLoughlin)
- fix jmp far decoding
- makefile cleanup (Christoph Hellwig)
- drop "interrupt shadow" flag when single stepping (Gleb Natapov)
- allow 4K ptes with PAT bit set
- irqfd (Gregory Haskins)
- allow speaker emulation in usespace (Jan Kiszka)
- fix ia64 timestamp counter (Jes Sorensen)
- fix PAE PDPTR handling
- fixes Fedora 11 i686 guests
- s390 inter-vcpu communication fixes (Christian Ehrhardt)
- s390 memory slot management improvements (Christian Ehrhardt)
- reduce MSI-X support to 256 vectors (Sheng Yang)
- avoid truncation of sysenter msrs on AMD (Andre Przywara)
- fix performance problem due to irq disabling on device assignment (Sheng Yang)
- fix init/exit text annotations (Stephen Rothwell)
- clean up coalesced_mmio destruction (Gregory Haskins)
- cleanup kernel iodevice code (Gregory Haskins)
- register PIT device after initialization (Gregory Haskins)
- avoid redundant tlb flush when using ept
- simplify ptptr and cr3 management on Intel
- cache pdptrs for i686 pae guests
- improve handling of unhandled ept violations
- fix host reboot failures with CONFIG_MAXSMP
- powerpc e500 adjustments (Liu Yu)
- vmx unrestricted guest (Nitin A Kamble)
- clean up lapic interface (Jan Kiszka)
- fix PIC locking (Marcelo Tosatti)
- improve PIC and IOAPIC scaling (Marcelo Tosatti)
- handle machine checks while running in guest mode (Andi Kleen)
- disable large pages on misaligned memory slots
- prevent overflow in largepage calculation
- prevent unnecessarily setting guest pages dirty bits under ept
- decouple vcpu id from apic id (Gleb Natapov)
- improve internal vcpu accessors (Gleb Natapov)
- break infinite emulation failure loops
- fix mmu audit (Marcelo Tosatti)
- generic performance counter msr handling (Andre Przywara, Amit Shah)
- improve ept error reporting (Marcelo Tosatti)
- disable large pages if ept does not support them (Marcelo Tosatti)
- improve simultaneous exception handling (Gleb Natapov)
- optimize APIC interrupt request register searching (Gleb Natapov)
- fix live migration with large pages (Izik Eidus)
- fix racy event propagation in timer (Jan Kiszka)
- remove unnecessary atomic test in timer (Jan Kiszka)
- optimize cr2 reloads on vmx
- drop cr2 save/restore on svm
- fix crash when guest uses vmx instructions
- implement msrs used by Hyper-V as a guest (Alexander Graf)
- implement invlpga instruction (Alexander Graf)
- improve nested interrupt injection (Alexander Graf)
- convert kvmtrace to use the generic kernel infrastructure (Marcelo Tosatti)
- fix concurrent mmu reloads and tlb flushes (Marcelo Tosatti)
- fix ia64 build (Jes Sorensen)
kvm-86 [20 may 2009]
- merge qemu.git
- qcow2 corruption fixes
- cpuid initialization fixes
- numa support
- improve rtc time drift compensation
- hardware watchdog
- merge bochs bios
- drop packets if all net links are down (Mark McLoughlin)
- fix device assignment error checking (Michael S. Tsirkin)
- fix -drive boot= parameter help (Pauline Middelink)
- fix tap networking after merge (Mark McLoughlin)
- set default configure option for ia64 (Xiantao Zhang)
- remove unnecesary differences compared to upstream (Anthony Liguori)
- fix build outside source directory (Anthony Liguori)
- ppc build fixes (Hollis Blanchard)
- revert incorrect ia64 icache sync (Hollis Blanchard)
- fix apic id save/load (Glauber Costa)
- fixes smp live migration
- libkvm cosmetics (Michael S. Tsirkin)
- fix virtio-net save/load (Alex Williamson)
- allow loading additional acpi tables (Gleb Natapov)
- allow loading additional smbios entries (Alex Williamson)
- fix dirty tracking on large memory (Glauber Costa)
- fixes live migration for guests with a lot of memory
- fix device assignment irq error handling (Alex Williamson)
- make kvm headers C++ friendly (Nathan Binkert)
- remove global page optimization (Marcelo Tosatti)
- fixes FreeBSD on shadow paging
- move lcall, ljmp, jcc, pio decoding to decode stage (Gleb Natapov)
- only skip instruction on task switch when approprite (Gleb Natapov)
- kvmclock cosmetics
- fix memory region overlap check (Jan Kiszka)
- ia64: don't hold slots lock in guest mode (Jes Sorensen)
- check cr3 validity on guest restore (Marcelo Tosatti)
- ia64: flush all tlbs on mapping change (Xiantao Zhang)
- ia64 cosmetics (Jes Sorensen)
- interrupt disable fixes for ia64 (Jes Sorensen)
- unregister cpu frequency notifiers on module unload (Jan Kiszka)
- fix mmu auditing code (Jan Kiszka)
- move irq injection logic to common code (Gleb Natapov)
- contains several irq fixes
- cleanup ept memory type support (Sheng Yang)
- enable snoop control for device assignment (Sheng Yang)
- disable vmx on system shutdown (Sheng Yang)
- fix nx feature reporting
- fix efer reads on hosts without efer
- fix apic debugging (Glauber Costa)
- fix cross vendor migration (Andre Przywara)
- drop request_nmi from kvm_stat (Jan Kiszka)
- fix MTRR, PAT, MCE, MCA feature reporting
- add cr8_legacy, abm, misaligned_sse, sse4, 3dnow prefetch feature reporting
- add movbe and popcnt feature reporting
- use smp_send_reschedule() to kick guests out of guest mode (Marcelo Tosatti)
- device assignment locking fixes (Marcelo Tosatti)
- remove port 80 passthrough on svm
- fixes hangs on some hp laptops
- deal with interrupt shadow state on emulated instructions (Glauber Costa)
- properly lock kvm_mmu_change_mmu_pages (Marcelo Tosatti)
- properly lock memory slot deletion (Marcelo Tosatti)
- expand on make menuconfig help (Robert P. J. Day)
- fix s390 memory slot locking vs vcpu run (Carsten Otte)
- use hrtimer for wakeup on s390 (Christian Borntraeger)
- s390 unlink vcpu on destroy (Christian Borntraeger)
- sanity check s390 intercept (Carsten Otte)
- s390 verify guest has some memory assigned (Carsten Otte)
- do not reexecute software interrupt instructions on intel (Gleb Natapov)
- disable cr8 intercepts if tpr patching is active (Gleb Natapov)
kvm-85 [21 apr 2009]
- merge qemu-svn
- microsoft serial mouse emulation
- cpuid fixes
- multiple simultaneous vnc client support
- allow additions of acpi tables from command line
- fix SDL with X.org evdev driver
- vnc sasl authentication
- fix one qcow2 corruptor
- fix qcow2 > 2TB images
- use preadv/pwritev when available for zero-copy block devices
- make pci mmio page aligned (Weidong Han)
- testsuite: MSR_KERNEL_GS_BASE handling
- fix extboot with cache=off (Nolan Leake)
- add release script
- add split qemu and kvm-kmod releases
- remove kvm script
- don't hardcode tsc_khz on older kernels (Marcelo Tosatti)
- count extboot as a disk in bios (Gleb Natapov)
- fixes Vista boot from virtio
- start/stop vcpus before/after devices (Yaniv Kamay)
- ia64 build fixes (Jes Sorensen)
- testsuite: test EFER.NXE
- ./configure fixes (Mark McLoughlin)
- don't use dirty log on ia64 (Yang Zhang)
- improve pci address parsing (Weidong Han)
- backward compatibility for PAGE_KERNEL_UC on ia64 (Yang Zhang)
- backward compatibility for msidef.h on ia64 (Yang Zhang)
- fix 4GB+ guest RAM with large pages (Marcelo Tosatti)
- clear tap features on initialization
- testsuite: jmp/jcc instructions (Gleb Natapov)
- fix handling of large pages in assigned devices (Joerg Roedel)
- mmu cleanups (Joerg Roedel)
- report irq injections to userspace (Gleb Natapov)
- set accessed bit on segment selectos on AMD (Andre Przywara)
- fixes cross-vendor migrations
- fix large page memory leak (Joerg Roedel)
- ppc e500 mmucsr0 register emulation (Liu Yu)
- support device deassignment (Weidong Han)
- fix ia64 msi build errors (Xiantao Zhang)
- update msr state when entering long mode (Amit Shah)
- fix test for long mode (Amit Shah)
- fixes some Solaris x64 variants
- fix sparse annotations (Hannes Eder)
- don't use highmem pages for vmx msr and pio bitmaps
- don't intercept MSR_KERNEL_GS_BASE on Intel
- speeds up Windows 2008 x64 somewhat
- unify ioapic and msi interrupt delivery (Sheng Yang, Gleb Natapov)
- msi-x support (Sheng Yang)
- fix kvmclock memory leak (Joerg Roedel)
- fix preempt warning in kvmclock (Matt T. Yourst)
- guest: skip pit-through-ioapic boot test (Marcelo Tosatti)
- stop ioapic code leaking into archs which don't have an ioapic (Christian Borntraeger)
- pit cleanups (Marcelo Tosatti)
- fix ia64 build (Zhang Yang)
- reduce unnecessary shadow update when a guest pte becomes dirty (Joerg Roedel)
- Altix SN2 real time clock support (Jes Sorensen)
- advertise irq routing table size (Sheng Yang)
- rework device assignment code (Sheng Yang, Marcelo Tosatti)
- fix missing flush on invlpg emulation (Andrea Arcangeli)
- fix ppc e500 mas0 wrong update (Liu Yu)
- fix smp instability on ppc e500 (Liu Yu)
- fix free_mmu_pages() doing things out of lock (Gleb Natapov)
- ignore reads to performance counter EVNTSEL msts (Amit Shah)
- fixes Kapersky antivirus failure
- clean up AMD interrupt injection (Gleb Natapov)
- make vmx module parameters readable, and reflect current setting
- simplify module parameter names
- fix compatibility mode guests ability to trash EFER
- don't unconditionally unhalt vcpu on timer event (Gleb Natapov)
- only unhalt vcpu on interrupt if interrupt window is open (Gleb Natapov)
- prevents 100% cpu on boot failure
- fix incorrect vmcs field sizes on some fields (Eddie Dong)
- fix misleading comment (Eddie Dong)
- enable external interrupts while in ia64 vmm (Yang Zhang)
- fix off-by-one calculating large page count
- emulate page fault caused by reserved bits set in guest pte (Eddie Dong, Sheng Yang)
- use different shadows when EFER.NXE changes
- clean up lapic freeing (Wei Yongjun)
- clean up flexpriority related code (Sheng Yang)
- fix vmx feature testing (Sheng Yang)
- fix PDPTE reserved bit testing (Eddie Dong)
- fix handling of a fault during NMI unblocked due to IRET (Gleb Natapov)
- clean up vmx interrupt completion (Gleb Natapov)
- fix task switch back link pointer (Gleb Natapov)
- fix near call emulation (Gleb Natapov)
- fix extboot failure after reset (Ryan Harper)
- ia64 vga fixes (Xiantao Zhang)
- ia64 instruction/data cache synchronization fixes (Xiantao Zhang)
- disable global page optimization (Marcelo Tosatti)
- fixes FreeBSD failures
- fix locking order when entering ia64 guest (Jes Sorensen)
- fix PIT mode 0 handling (Marcelo Tosatti)
kvm-84 [15 feb 2009]
- merge qemu-svn
- redirect slirp traffic to qemu-char device
- slirp fixes
- qcow2 fixes
- nic link status control
- enable ac97 audio by default
- add virtio-console device
- fix rtc time drift on Windows (-rtc-td-hack option)
- add -vga none option for running headless guests
- better block device error propagation
- fix guests halting when switching desktop workspace
- improved display interfaces
- better logging support
- don't corrupt qcow2 images when out disk space on host
- dma api
- add pci device vendor ID
- vnc improvements
- improve Virtual PC disk format support
- scsi fixes
- multicast filtering for e1000 and virtio-net
- add libkvm wrapper for KVM_SET_CPUID2 interface (Amit Shah)
- fix cpuid for leaves 4, 11, 13 (Amit Shah)
- save ia64 nvam (Yang Zhang)
- compile fixes (Mark McLaughlin, Jan Kiszka)
- generic irq routing
- build fixes against RHEL 5 hosts (Andrea Arcangeli)
- fix build when pc-bios directory is empty (Eduardo Habkost)
- improve host version check (Mark McLaughlin)
- drop obsolete eflags conversion to/from qemu emulator (Jan Kiszka)
- preallocate memory with -mem-path (John Cooper)
- don't register unassigned PCI BARs (Gleb Natapov)
- more hrtimer API compatibility
- fix build on uniprocessor hosts (Jan Kiszka)
- fix build on pre-msi hosts (Jan Kiszka)
- allow stopping vm from vcpu thread (Gleb Natapov)
- fix cpu and pci hotplug (Gleb Natapov)
- ppc updates (Liu Yu)
- fix ia64 fp trap handler (Yang Zhang)
- fix ia64 vtlb handling (Xiantao Zhang)
- enables Windows 2008 on ia64
- support translating ia64 PAL arguments (Xiantao Zhang)
- implement ia64 PAL calls needed by Windows 2008 (Xiantao Zhang)
- map assigned device mmio as uncachable (Sheng Yang)
- fix lapic pending count calculation (Marcelo Tosatti)
- fix s390 printk (Christian Borntraeger)
- fix s390 problem state check (Christian Borntraeger)
- fix s390 SIGP set prefix ioctl (Christian Borntraeger)
- dynamic ia64 cpu count (Jes Sorensen)
- fix lapic build on i386 (Clemens Noss)
- make irq ack notifications use routing table (Marcelo Tosatti)
- FFXSR support (Alexander Graf)
- fix assigned device circular locking dependency (Mark McLaughlin)
- drop unused code from string pio handlers (Jan Kiszka)
- fix kvmclock on hosts with unstable tsc (Gerd Hoffman)
- reenables Fedora 10 guests on those hosts
- enable msi from userspace (Sheng Yang)
- remove duplicated code in EPT handler (Sheng Yang)
- flush volatile msrs on Intel before emulating rdmsr
- fixes cygwin on Windows x64
kvm-83 [13 jan 2009]
- amd iommu support (with Linux 2.6.29+ hosts) (Joerg Roedel)
- merge qemu-svn
- qcow2 correctness fixes
- '-drive serial=...' option
- virtio-net migration fixes
- fix '--with-patched-kernel' build on Ubuntu (Nolan Leake)
- improved tsc handling (Marcelo Tosatti)
- should reduce timing errors on older Linux guests
- remove cpuid code duplication due to upstream qemu work (Amit Shah)
- guest S3 sleep (Gleb Natapov)
- load assigned devices option rom (Kechao Liu)
- '-no-kvm-pit-reinjection' option to improve timing on RHEL 3 era guests (Marcelo Tosatti)
- remove duplicate firmware config interface probe in bios (Sebastian Herbszt)
- backward compatibility for marker_synchronize_register() (Eduardo Habkost)
- fix compile warning in tpr patching (Mark !McLoughlin)
- don't install kvm headers to /usr/local
- fix smbios memory size in certain cases (Bill Rieske)
- simplify mmu shadow walking function
- stop using vmap() on guest pages (annoys ksm) (Izik Eidus)
- fix warning on MSR_VM_HSAVE_PA in dmesg
- fix i8254 timer count read (Marcelo Tosatti)
- ppc e500 core support (Hollis Blanchard)
- fix vmx real mode guest state validity checks
- make pop instruction emulation a little more generic
- implement 'ret far' instruction emulation
- properly lock i8354 timer
- remove ppc debug support (Hollis Blanchard)
- fix race freeing assigned device interrupt (Sheng Yang)
- fix pci interrupt in freeing in device assignment (Sheng Yang)
- allow disabling msi for assigned devices (Sheng Yang)
- emulate amd microcode level msr (Alexander Graf)
- helps esx boot on kvm
- make page unshadowing a little faster
- clear pending pit interrupts when unmasking the timer irq
- fixes xen-on-kvm
- mmu notifiers release method (Marcelo Tosatti)
- fixes large pages support
- expose ia64 registers to userspace (Jes Sorensen)
- fix type in has_svm() (Joe Perches)
- drop unnecessary memory clearing when allocating shadow page (Marcelo Tosatti)
- rename "metaphysical" page attribute to "direct"
- fix irq routing with -no-kernel-irqchip
kvm-82 [25 dec 2008]
- merge qemu-svn
- uuid support
- fix CVE-2007-5729 (slirp vulnerability)
- fix CVE-2008-2382 (vnc denial of service)
- better scsi support
- pci subsystem id for pci devices
- this will cause Windows guest to rediscover hardware
- improved I/O parallelism
- ppc kvm support
- hpet support
- not fully integrated yet
- monitor 'info status' command
- merge bochs-bios-cvs
- uuid support
- prepare for S3 sleep
- merge vgabios-cvs
- much improved guest debugging (Jan Kiszka)
- both debugger in guest and debugger in host
- fix kvm makefile for separate object dir (Andi Kleen)
- nested svm (Alexander Graf)
- run kvm in kvm in kvm...
- fix ia64 register and stack access from userspace (Jes Sorensen)
- don't treat a global pte as global if cr4.pge is clear
- fixes Vista x86 smp failure on boot
- properly lock virtual i8259 interrupt controller
- fix large host pages invlpg/resync
- fixes oops when using host hugetlbfs
- fix vmload instruction misemulated as lidt
kvm-81 [16 dec 2008]
- merge qemu-svn
- fix performance regression with qcow2 files
- improve qcow2 data integrity with cache=writethrough
- fix display corruption with gnome panel auto-appear
- scsi improvements
- shld/shrd instruction emulation and unit test (Guillaume Thouvenin)
- ppc updates (Hollis Blanchard, Deepa Srinivasan, Christian Ehrhardt)
- prepare virtio for upstream merging (Anthony Liguori)
- fix uninitialized variable in virtio-net (Anthony Liguori)
- fix compile failure on Debian (Amit Shah)
- fix display loss in opensuse 11 installer
- fix vmmcall emulation on intel (Amit Shah)
- fixes amd->intel migration
- allow userspace to work with modules from kvm-79 and earlier
- fix undefined behaviour copying cpuid signature (Guillaume Thouvenin)
- fix build with --kerneldir (Maik Hentsche)
- really exit if device assignment fails (Mark !McLoughlin)
- fix vga on ia64 (Xiantao Zhang)
- simplify nmi injection from userspace (Jan Kiszka)
- enable virtio zero-copy (Mark !McLoughlin)
- also fixes crash in rare cases
- fix display loss on 32-bit hosts
- reduce tlb flushing when resyncing pages (Marcelo Tosatti)
- don't resync global pages on context switch (Marcelo Tosatti)
- improves HIGHMEM performance
- prepopulate shadow on invlpg (Marcelo Tosatti)
- fix kvmclock when HZ != 1000 (Eduardo Habkost)
- fix module unload race oops (Christian Borntraeger)
- reduce stack footprint on large hosts (Rusty Russell)
- reduce capability reporting code duplication
- check for missing pae pdptr on invlpg emulation (Marcelo Tosatti)
- fixes solaris 10 oops
- fix handlig of ack from irq shared between assigned and emulated devices (Mark !McLoughlin)
- fix nmi-vs-irq race for -no-kvm-irqchip (Jan Kiszka)
kvm-80 [7 dec 2008]
- merge qemu-svn
- automatic port allocation for vnc and similar
- improved cdrom media change handling
- improved debugging support
- more scsi improvements
- e1000 vlan offload
- up to 256 vcpus for ia64 (Jes Sorensen)
- only request io port permission if device assignment is enabled (Jes Sorensen)
- fix in-kernel ioapic reset (Jan Kiszka)
- fixes guest reboot failures
- fix balloon for systems with page size different from 4K (Hollis Blanchard)
- fix bios memory reporting with >32G guests (Bill Rieske)
- drop inclusion of compiler.h in external modules (Xiantao Zhang)
- use vcpu pointers instead of vcpu numbers (Jes Sorensen)
- goodbye bool (Jes Sorensen)
- stop using separate structure for cpu state; use qemu's instead (Jes Sorensen)
- apic testsuite
- fix -no-kvm apic with smp (Jan Kiszka)
- clean up userspace nmi injection (Jan Kiszka)
- adjust external module for 2.6.28 hosts (Mark McLoughlin)
- much improved large mtu/gso support for virtio-net (Mark McLoughlin)
- simplify x86 emulator stack pop operations
- clean up device assignment code (Mark McLoughlin)
- fix extboot returning error incorrectly (Glauber Costa)
- constrain device assignment mmio to page alignment (Han Weidong)
- ppc speedups (Hollis Blanchard)
- fix s390 problem state handling (Christian Borntraeger)
- fix interrupt loss when injecting an nmi
- fixes Linux guests with nmi watchdog hanging
- fix ia64 build (Xiantao Zhang)
- fix emergency reboot and kdump on host while running VMs (Eduardo Habkost)
- fix syncing of self-referencing ptes (Marcelo Tosatti)
- add printk() for ia64 vmm (Xiantao Zhang)
- add crashed vm handler for ia64 (Xiantao Zhang)
- use correct calling convention into ia64 PAL code (Xiantao Zhang)
- request interrupt window after injecting an interrupt if another is pending
- plug ppc memory leak when destroying a vm
- sign kvmclock as a paravirt operation (Glauber Costa)
- MSI support for device assigment (Sheng Yang)
- fix shadow pagetables leak (Marcelo Tosatti)
- fixes an oops
- optimize setting new pte while syncing a page (Marcelo Tosatti)
- reduce code duplication in x86 emulator
- fix s390 refcounting; allow module unload (Christian Borntraeger)
- fix s390 memory leak (Christian Borntraeger)
- prevent tracing calls into unloaded module (Wu Fengguang)
- fix sparse warnings (Hannes Eder)
- clean up irq ack notifiers (Mark McLoughlin)
- powerpc large page support (Hollis Blanchard)
- faster powerpc shadow tlb handling (Hollis Blanchard)
- reduce powerpc guest tlb miss rate on context switches (Hollis Blanchard)
- powerpc exit timing stats (Hollis Blanchard)
- fix -no-kvm-irqchip not working with smp (Jan Kiszka)
- fix rendering regressions introduced by upstream qemu rendering support
kvm-79 [12 nov 2008]
- merge qemu-svn
- fix qcow2 problems with scsi
- 'info chardev' monitor command
- device assignment userspace (Amit Shah, Muli Ben Yehudah, Ben-Ami Yassour, Weidong Han, Or Sagi, Nir Peleg, Glauber Costa, Xiantao Zhang)
- multiple processor infrastructure for ppc (Hollis Blanchard)
- fix error handling in eventfd() emulation (Mark McLoughlin)
- handle large mtu with virtio-net (Mark McLoughlin)
- move x86 specific device assignment code to x86 files (Christian Ehrhardt)
- fix 'pci_add' command descriptor (Weidong Han)
- enable pci function level reset for device assignment (Sheng Yang)
- fix incorrect handling of aliases gfns (Izik Eidus)
- ppc optimizations (Hollis Blanchard, Christian Ehrhardt)
- disallow guests from setting memory type when using EPT (Sheng Yang)
- fix cpuid leaf 11 loop termination (Nitin A Kamble)
- fix cpuid multiple leaf iteration (Nitin A Kamble)
- fix ia64 uniprocessor build (Xiantao Zhang)
- fix ppc Kbuild constraints (Hollis Blanchard)
- fix pit initialization memory leak
kvm-78 [2 nov 2008]
- fix paravirt kernels due to missing oos flush (Marcelo Tosatti)
- code cleanups (Sheng Yang)
- fix guest shared interrupts for device assignment (Sheng Yang)
- avoid stale asm-offsets.h on ia64 (Xiantao Zhang)
- fix ia64 halt emulation (Xiantao Zhang)
- extend slot bitmap on i386 (Sheng Yang)
- move private memory slots to avoid conflict with device assignment (Sheng Yang)
- future-proof device assignment ABI
- add emulation and unit tests for add acc, imm instruction (Guillaume Thouvenin)
- fix nmi watchdog emulation (Jan Kiszka)
- optimize nmi watchdog delivery (Jan Kiszka)
- require irq ack notifier to be used with in-kernel irqchip (Sheng Yang)
- don't halt non-boot cpu if using in-kernel irqchip (Gleb Natapov)
- add cscope definitions (Sheng Yang)
- merge qemu-svn
- new live migration implementation
- usb improvements
- migration fixes
- read UUID from qemu (Gleb Natapov)
- increase max cpu count to 255 for ia64 (Xiantao Zhang)
- handle INIT before SIPI (Gleb Natapov)
- update ppc for nmi changes (Christian Ehrhardt)
- fix external module generation unifdef problem (Sheng Yang)
- set 'g' bit of segment descriptor on AMD when necessary (Amit Shah)
- set 'busy' bit of task descriptor on AMD when necessary (Amit Shah)
- fixes some AMD->Intel live migration failures
- use emulator to adjust rip of pio string instructions (Guillaume Thouvenin)
- increase rmap preallocation (Marcelo Tosatti)
- fixes oops on mmu intensive smp workloads
- handle mmio in big real mode (Guillaume Thouvenin)
- reorganize ia64 guest data area (Xiantao Zhang)
- fix ia64 guest signal mask (Xiantao Zhang)
- reduce locking when vcpu is halted (Xiantao Zhang)
- update e820 table for ept real mode identity map page (Sheng Yang)
- fix external module build with kvmtrace
- fix ppc xer access (Christian Ehrhardt)
- fix ppc threading (Hollis Blanchard)
- implement libcflat for ppc 44x (Hollis Blanchard)
- set smp limit for ppc (Hollis Blanchard)
- fix ppc memory setup (Christian Ehrhardt)
kvm-77 [12 oct 2008]
- merge bochs-bios-cvs
- merge qemu-svn
- more -cpu options
- faster disk emulation (esp. with scsi/virtio)
- improved NMI support (Jan Kiszka)
- improve >4GB memory support (Alex Williamson)
- memory alias cleanups (Glauber Costa)
- fix kvmtrace segfault (Ryota OZAKI)
- make external module compile on split source/object configs (Alexander Graf)
- allows compiling on opensuse
- fix -std-vga regression
- fix migration failure at end of migration protocol
- map mmio pages for device assignment (Weidong Han)
- silence lapic kernel messages (Jan Kiszka)
- fix vcpu reset (Gleb Natapov)
- fix missed invlpg on EPT-enabled machines with EPT disabled (Marcelo Tosatti)
- device assignment on ia64 (Xiantao Zhang)
- memory type support on EPT (Sheng Yang)
kvm-76 [28 sep 2008]
- merge qemu-svn
- improved usb support
- vnc improvements
- pass uuid to guest
- scsi improvements
- change virtio-blk to guest-endian configuration (Liu Yu)
- add 'call near absolute' to x86 emulator and testsuite (Mohammed Gamal)
- drop support for kernel memory allocation (Glauber Costa)
- avoid fiddling with ISA mappings (Jan Kiszka)
- improves debugging support
- fix external module build on 2.6.22 hosts
- make kernel and userspace memory slot count agree (Sheng Yang)
- add 'cmp' to x86 emulator testsuite (Mohammed Gamal)
- allow 'make sync' from toplevel directory
- external module compatibility for get_user_pages_fast() api (Jan Kiszka)
- correct mtrr setup with >= 4GB RAM (Alex Williamson)
- fix ia64 boot with acpi enabled (Xiantao Zhang)
- initialize userspace kvm context (Uri Lublin)
- fix ia64 with >= 3GB RAM (Xiantao Zhang)
- avoid allocating translated code buffer when using kvm
- simplify memory registration (Glauber Costa)
- support kvmtrace with external module (Eduardo Habkost)
- ia64 init code simplification (Jes Sorensen)
- ia64 external module compatibility with older kernels (Xiantao Zhang)
- fix live migration due to slot number getting lost (Uri Lublin)
- prevent live migration if a device is missing on the target (Uri Lublin)
- fix include-compat/asm symlinks (Uri Lublin)
- do not execute halted vcpus (Marcelo Tosatti)
- fix global tlb flushes with NPT (Joerg Roedel)
- fix preemption error on real mode emulation
- fix page aging with EPT (Sheng Yang)
- simplify locking around ppc shadow tlb page access (Hollis Blanchard)
- cleanup redundant vmcs read (Jan Kiszka)
- fix 64-bit jmp instruction emulation
- move vmx msr definitions to common code
- better support for instructions that reference the accumulator (Guillaume Thouvenin)
- add cmp acc, imm instruction emulation (Guillaume Thouvenin)
- kernel support for device assignment (Allen Kay, Amit Shah, Weidong Han, Ben-Ami Yassour)
- switch to using get_user_pages_fast() (Marcelo Tosatti)
- nice speedup on 2.6.27+ hosts
- build fix for ia64 (Jes Sorensen)
- code cleanup (Harvey Harrison)
- avoid entering guest after a startup IPI (Gleb Natapov)
- simplify 'push reg' instruction emulation (Guillaume Thouvenin)
- fix error handling on vcpu creation failure (Glauber Costa)
- support Tukwilla ia64 processors (Xiantao Zhang)
- fix tlb flush when converting a large page to small pages (Marcelo Tosatti)
- out-of-sync shadow (Marcelo Tosatti)
- reduce inter-processor interrupt generation when using the PIC (Marcelo Tosatti)
kvm-75 [10 sep 2008]
- add 1280x768 std-vga resolution
- ballooning (Anthony Liguori)
- requires 2.6.27+ host to work correctly
- fix bad memory sizing on ia64 (Xiantao Zhang)
- restore option roms to their original content on reset
- fixes extboot failures after reset
- enable ia64 power manangement (Xiantao Zhang)
- add cld/std/cli/sti/clc instructions to testsuite (Mohammed Gamal)
- fix compile errors on hosts that lack MADV_DONTFORK
- avoid accessing CMOS NVRAM from ACPI AML (Gleb Natapov)
- fixes rare reboot failures with Windows
- fixes ACPI error messages in Windows event log
- add mp state for ia64 (Xiantao Zhang)
- add missing prototypes (Jes Sorensen)
- fix compiler warnings (Jes Sorensen)
- add in/out instructions to emulator (Mohammed Gamal)
- use Windows pcr instead of guest's tr for tpr patching cpu id
- fixes hibernate/resume with guest smp
- account for realmode/npt/ept page faults in statistics
- fix locking around dirty log tracking
- flush tlbs after fetching the dirty log
- fix random segfaults with npt (Joerg Roedel)
- fix setting accessed bit on non-speculative sptes
- fix tlb flush during page zap
- slightly optimize event injection with npt
- add MC5_MISC msr support (Joerg Roedel)
- fixes Linux bootup warnings
- make s390 facility bits future proof (Christian Borntraeger)
- improve s390 guest Kconfig help (Christian Borntraeger)
- add cld/std instructions to emulator (Mohammed Gamal)
- fix address overflow in ept (Sheng Yang)
- add statistic for guest irq injections
- remove unnecessary remote tlb flush (Joerg Roedel)
kvm-74 [28 aug 2008]
- make real-mode startup state conform to spec
- fix scheduling error in experimental big real mode support
- fix reboot fault handler exception table entry (Eduardo Habkost)
- x86 emulator code cleanup (Roel Kluin)
- fix 'neg r/m' instruction emulation forced to byte size
- fix shadow ptes corruption on i386 hosts running smp guests
- fix kvmtrace ABI breakage (Adrian Bunk)
- enable virtio for ia64
- add generic shadow page table walker
- allocate internal guest memory as MAP_PRIVATE
- don't call get_user_pages(.force=1)
- paves the way for get_user_pages_fast()
- add mov r, imm instructions to the emulator (Mohammed Gamal)
- realmode emulator testsuite
- ia64 external module support (Xiantao Zhang)
- support tap IFF_VNET_HDR (Mark McLoughlin)
- merge qemu-svn
- improved usb support
- usb auto connect/disconnect
- protect against possible corruption during qemu fork() on older hosts (Marcelo Tosatti)
kvm-73 [21 aug 2008]
- merge qemu-svn
- improve qcow2 performance with cache=off
- ide fixes
- ia64 external module (Xiantao Zhang)
- external module compatibility with 2.6.27 hosts
- fix sysenter msrs save/restore (Alexander Graf)
- fix 2.6.26 host support (Nikola Ciprich)
- fix linux-user build (Philippe Gerum)
- virtio-net speedup (Mark McLoughlin)
- fix ./configure with multiple arguments
- support Windows hibernation on non-FlexPriority hosts
- fix makefile dependencies (Sheng Yang)
- fix compiler warnings (Jan Kiszka)
- work around dhclient checksum offload brokenness (Anthony Liguori)
- full swapping support (Andrea Arcangeli)
- needs 2.6.27 hosts
- internal irq ack notification api (Marcelo Tosatti, Amit Shah, Ben-Ami Yassour, Avi Kivity)
- fix pit timer interrupt injection logic (Marcelo Tosatti)
- paravirt guest: query tsc frequency from host (Glauber Costa)
- pci device assignment (Amit Shah, Ben-Ami Yassour, Weidong Han)
- still lacking dma
- fix large page crash on z10 mainframes (Christian Borntraeger)
- stack usage reduction (Dave Hansen, Sheng Yang)
- code cleanup (Sheng Yang)
- fix debug register corruption on Intel hosts (Marcelo Tosatti)
- fix -no-kvm-irqchip
- fix irq acking on pic reset (Marcelo Tosatti)
- ignore spurious timer interrupt acks
- limit device assignment to privileged user (Amit Shah)
- big real mode emulation framework (Mohammed Gamal)
- simpify irq injection (Amit Shah)
- dummy irq ack notifier for ia64 (Xiantao Zhang)
kvm-72 [28 jul 2008]
- fix ia64 build breakage (Xiantao Zhang)
- ppc kvmtrace support (Christian Ehrhardt)
- merge qemu-svn
- fixes suspend/resume of multiple nics
- adds Virtual Distributed Ethernet (vde) support
- add 'push mem' to patched tpr instructions
- use host kernel anon_inodes support if available
- robustify signalfd() emulation
- avoid losing the iothread on random signals
- fix test for iothread (Jan Kiszka)
- remove hypercall device (Anthony Liguori)
- remove duplicate monitor command (Anthony Liguori)
- remove unused function declaration (Anthony Liguori)
- remove unnecessary change to TARGET_PAGE_SIZE (Anthony Liguori)
- remove qemu/kvm application decoration (Anthony Liguori)
- add 'info kvm' monitor command (Anthony Liguori)
- s390 libkvm port (Carsten Otte)
- fix compile warning (Carlo Marcelo Arenas Belon)
- fix duplicate #include (Carlo Marcelo Arenas Belon)
- adjust external module for 2.6.27 hosts
- avoid tpr patching when the stack is not valid (Marcelo Tosatti)
- fixes some variant of Windows 2003 SMP
- fix extboot stomping on reserved interrupt vectors (H. Peter Anvin)
- remove unused -translation option (Anthony Liguori)
- fix preemption during copy_from_user_inatomic() on older hosts (Andrea Arcangeli)
- fix ppc cpu initialization (Hollis Blanchard)
- drop shadow ptes on memslot destruction (Marcelo Tosatti)
- improve invalid shadow root page table handling (Marcelo Tosatti)
- simplify mmu page zapping
- simplify interrupt processing on Intel
- remove redundant check for real mode (Mohammed Gamal)
- add clflush emulation (Glauber Costa)
- fix race setting shadow ptes on i386
- consolidate pic isr clearing into a function
- consolidate exception interrupt vector #defines (Jan Kiszka)
- fix interrupt reinjection in real mode (Jan Kiszka)
- unify guest register save/restore code
- x86 hardware task switching fixes (Marcelo Tosatti)
- optimize vmx by avoiding saving the host stack pointer
- fix interrupts being delayed by instruction emulation
- improves Vista stability
- fix reloading kvm-intel.ko while changing parameters (Sheng Yang)
- fix reboot exception entry build bug (Ingo Molnar)
- ignore no-op DEBUGCTL msr writes (Alexander Graf)
- fixes Netware
- fix irq state leak on ia64 (Julia Lawall)
- s390 fixes (Carsten Otte, Christian Borntraeger, Martin Schwidefsky)
- ppc guest breakpoint support (Hollis Blanchard)
- optimize ppc by not saving host tlb state (Hollis Blanchard)
- reduce ppc guest tlb writes (Hollis Blanchard)
- avoid guest tlb flushes on guest privilege switches (Hollis Blanchard)
kvm-71 [14 jul 2008]
- fix virtio isr clearing (Laurent Vivier)
- kvmtrace ppc userspace support (Jerone Young)
- avoid fragmenting virtio-blk transfers (Anthony Liguori, Mark McLoughlin)
- ia64 build fixes (Anthony Xu)
- remove unnecessary virtio-net printout (Marcelo Tosatti)
- remove configure warning about gcc 3 (Carlo Marcelo Arenas Belon)
- rhel 5.2/centos 5.2 host support
- merge qemu-svn
- adds pulseaudio driver
- nbd client/server
- disable cpu emulation by default on ia64 (Xiantao Zhang)
- place test support files in a library (Jerone Young)
- fix qemu monitor screendump
- fix lost interrupt when changing a device irq
- fixes devices going away when disabled and enabled several times
- fix oops on shutdown freeing coalesced mmio page (Akio Takebe)
- optimize segment register access in emulator
- allow run-time enabling of mmu debug
- fix host msr corruption when host preempt is enabled
- fix kvmclock (Gerd Hoffmann)
- rename badly named msrs (Sheng Yang)
- fix incorrect usage of vmcs_config when using ept (Sheng Yang)
- emulate performance counter msrs on Intel (Chris Lalancette)
- allows Linux 2.6.9 guests to boot
- optimize vapic locking when disabled (Marcelo Tosatti)
- don't allocate dirty bitmap for s390 (Catsten Otte)
- fix memory leak on guest exit (Carsten Otte)
- update s390 guest base and limit (Christian Borntraeger)
- optimize access to guest registers (Marcelo Tosatti)
- add memory clobber to hypercalls (Anthony Liguori)
- fixes booting guests compiled with gcc 4.3
- fix ioapic hang on heavy load (Mark McLoughlin)
- move kvmtrace definitions to common header (Hollis Blanchard)
- fix suspend/resume on AMD (Joerg Roedel)
- make some functions static (Adrian Bunk)
- fix shrinker locking (Marcelo Tosatti)
- fix ept tlb flush (Sheng Yang)
- fix signal handling on uninitialized vcpus
- fix hlt instruction in real mode (Mohammed Gamal)
- check pic irq range (Ben-Ami Yassour)
- add function to inject irqs into guests (Amit Shah)
kvm-70 [17 jun 2008]
- improve virtio net performance (Anthony Liguori)
- enable pci slot identification for OS X (Alexander Graf)
- fix guest reset (Jan Kiszka)
- code cleanups (Jan Kiszka)
- fix userspace compilation on older kernels (Chris Wright)
- support running on 2.6.16 hosts (Andrea Arcangeli)
- including SLES 10
- generate mptable even for uniprocessor guests
- helps esx get further along
- fix corrupted breakpoints (Jerone Young)
- on_vcpu() mechanism to execute a function on a vcpu thread
- fix 'info registers' monitor command
- fix vcpu register access livelock when a vcpu is spinning
- fix stopping on debug events (Jan Kiszka)
- fix livelocks in guest debugger (Jan Kiszka)
- add mtrr support
- helps esx limp a bit more
- fix incorrect pmtimer overflow interrupt generation
- add 'push imm' instruction to testsuite
- fix on_vcpu() during guest debug (Jan Kiszka)
- document boot option for drive flag (Carlo Marcelo Arenas Belon)
- coalesced mmio support (Laurent Vivier)
- should speed up some workloads
- allow kprobes to coexist with preempt notifier emulation (Andrea Arcangeli)
- allow virtio devices to reset themselves (Marcelo Tosatti)
- asynchronous virtio storage device (Marcelo Tosatti)
- should improve performance
- fix deadlock waiting for I/O completion
- merge qemu-svn
- remove dependency on gcc 3
- vnc client segfault fix
- fix vnc problems on resize
- qemu-nbd tool
- fix libkvm memory slot destruction api (Ben-Ami Yassour)
- enable tpr optimization for smp
- should drastically speed up Windows XP SMP guests
- big-endian kvmtrace support (Li Tan)
- remove unneeded variable (Glauber Costa)
- convert acpi tables to use the C preprocessor for less repetition
- external module compatibility for NMI (Alexander Graf)
- fix live migration with new on_vcpu() calls
- fix false flooding when a pte points to a page table
- improves 2.4 pae guests with CONFIG_HIGHPTE
- enable NMI support on Intel (Sheng Yang)
- fix zero extension during mmio on ia64 (Jes Sorensen)
- fix hypercall return value on AMD
- fixes running CONFIG_KVM_GUEST guests
- s390: use yield() instead of schedule() (Christian Borntraeger)
- s390: fix locking order problem (Christian Borntraeger)
- s390: handle machine checks while guest is running (Christian Borntraeger)
- s390: fix interrupt delivery (Carsen Otte)
- s390: send program check on access error (Carsen Otte)
- s390: fix race when idling (Carsen Otte)
- ppc: add lwzx/stwz instruction emulation (Hollis Blanchard)
- ppc: code cleanup (Hollis Blanchard)
- ppc: report bad gfns (Hollis Blanchard)
- optimize pio path slightly
- improve segment register ordering
- migrate pit timer on vcpu migration (Marcelo Tosatti)
- emulate jmp far instruction (Guillaume Thouvenin)
- emulate mov reg, imm instruction (Guillaume Thouvenin)
- emulate mov reg, sreg instruction (Guillaume Thouvenin)
- optimize mmu page prefetching
- emulate push imm instruction
- avoid mmu page prefetching on AMD
- allow VMware Server to take over vmx when unloading the module (Eli Collins)
- avoid spinning during large guest teardown
- fix ioapic interrupt sharing (Marcelo Tosatti)
- fix crash on resume from suspend to ram (Andrea Arcangeli)
- fix race between timer migration and vcpu migration (Marcelo Tosatti)
- close timer injection race when entering guest mode (Marcelo Tosatti)
- fix reverse map corruption with large pages (Marcelo Tosatti)
- fix large page pte updates on non-pae guests (Marcelo Tosatti)
- avoid timer injection if timer already pending (Marcelo Tosatti)
- avoid linear rip calculation if not reporting (Glauber Costa)
- fix host oops on guest userspace access to guest page table
- improve emulation failure reporting
- emulate nop and xchg reg, acc (Mohammed Gamal)
- handle undecoded rex.b when r/m = 5
- simplify r/m and sib decoding
- simplify relative rip decoding
- avoid segment adjust for lea instruction
kvm-69 [19 may 2008]
- fix kvm guest clock compile error without apic (Glauber Costa)
- support PIT mode 3 (Aurelien Jarno)
- needed by GNU Hurd
- fix host oops emulating smsw on AMD
- fake performance counter MSRs on AMD (Chris Lalancette)
- fixes RHEL 4 guests
- fix virtio compile error on s390 (Heiko Carstens)
- fix hlt emulation when PIT is running but not injecting interrupts (Marcelo Tosatti)
- ditto for local apic (Marcelo Tosatti)
- fix kernel and userspace structure name clash on ia64 (Xiantao Zhang)
- fix GVMM module including non-PIC objects (Xiantao Zhang)
- 'make mrproper' fix (Andrew Morton)
- fix host oops on emergency reboot when hitting virt instructions
- simplify host cpu unplug
- fix kvm_vcpu_block() state race (Marcelo Tosatti)
- set iosapic pin count to 48 for ia64 (Xiantao Zhang)
- ppc: fix compile warning (Hollis Blanchard)
- ppc: fix lost simultaneous interrupts (Hollis Blanchard)
- ppc: log failed DCR accesses (Hollis Blanchard)
- ppc: order IRQ bit numbers as per docs (Hollis Blanchard)
- ppc: remove IRQ polarity code (Hollis Blanchard)
- ppc: remember state of level-triggered interrupts (Hollis Blanchard)
- ppc: emulate pci controller on 440 SoC (Hollis Blanchard)
- ppc: add pci controller to bamboo platform (Hollis Blanchard)
- external module compatibility updates
- merge qemu-svn
- fix CVE-2007-1320 - Cirrus LGD-54XX "bitblt" heap overflow
- allow boot device change from the monitor
- reduce spurious vga updates
- fix CVE-2008-2004 - format guessing vulnerability
- remove merge conflict leftover (Carlo Marcelo Arenas Belon)
kvm-68 [4 may 2008]
- Intel EPT support (Sheng Yang)
- Code cleanups (Harvey Harrison)
- Fix task switch busy bit setting (Izik Eidus)
- Reduce guest idle cpu usage on ppc (Hollis Blanchard)
- Support floating point instructions on ppc (Christian Ehrhardt)
- Fix lmsw emulation
- fixes host oops on AMD
- Add PIT mode 4 support (Marcelo Tosatti)
- fixes DragonflyBSD
- Avoid spurious exceptions on state reload (Jan Kiszka)
- Add SVM kvmtrace support (Joerg Roedel)
- Avoid schedule-in-atomic on 2.6.26 hosts (Andrea Arcangeli)
- Handle vma regions with no backing page (Anthony Liguori)
- yet another step on the way to pci device assignment
- move external module compatibility code into .c file
- build: sync non-x86 kvm headers
- avoid using kernel headers; use installed libc headers instead
- don't exit iothread berfore all vcpus are stopped (Dor Laor)
- libkvm uninitialized variable fix (Marcelo Tosatti)
- remove old user/config.mak (Jerone Young)
- fix vcpu startup race (Anthony Liguori)
- dump all libkvm errors to stderr (Jan Kiszka)
- fix cross-compilation (Jerone Young)
- fix kvm_show_code() to work on ROM and real-mode (Jan Kiszka)
- allow qemu -kernel option with extboot (Mark McLoughlin)
kvm-67 [28 apr 2008]
- s390/ia64: compile fix (Christian Borntraeger)
- s390: change virtio interrupt to follow arch specification (Christian Borntraeger)
- close vcpu refcounting race (Al Viro)
- code cleanups (Hollis Blanchard, Christian Borntraeger)
- ppc 44x support (Hollis Blanchard, Jerone Young)
- reduce cr8 intercepts on AMD (Joerg Roedel)
- speeds up Vista x64
- fix locking in paravirt mmu support (Marcelo Tosatti)
- fix ppc build on non-44x (Stephen Rothwell)
- fix PIT time-drift compensation with multiple guests (Marcelo Tosatti)
- merge qemu-svn
- spin up vcpu threads before setting lapic contents
- pass disk geometery to extboot loader (Ryan Harper)
- separate header copying from source copying in 'make sync'
- implement 'hypervisor present' cpuid bit
- fix address truncation on ia64 (Jes Sorensen)
- handle nic/storage hotplug failure gracefully (Chris Wright)
- more kvm_stat display options
- fix qemu system_powerdown with Linux guests
kvm-66 [16 apr 2008]
- adjust external module for 2.6.25 module locations (Anthony Liguori)
- fix userspace compilation failure without kernel pit (Joerg Roedel)
- kvmtrace performance monitoring mechanism (Eric Liu)
- stop all vcpus before saving their state (Marcelo Tosatti)
- fixes smp live migration
- save/restore kernel apicbase (Marcelo Tosatti)
- block SIG_IPI signals (Marcelo Tosatti)
- smsw mem16, lmsw mem16 emulation and unit tests
- fix compile warnings (Jerone Young)
- fix reset with iothread
- ia64 architecture support (Xiantao Zhang, Anthony Xu)
- don't assume guest pages are backed by a 'struct page' (Anthony Liguori)
- needed for pci device assignment
- register kvm's ioctl range
- fix hardware task switching buglet (Izik Eidus)
- fix mce handling on AMD (Joerg Roedel)
- do hardware task switching in hardware when NPT is enabled (Joerg Roedel)
- fix timer race waking up a halted vcpu with smp (Marcelo Tosatti)
- fix irq race leading to irqs delivery delays (Marcelo Tosatti)
- fix triple fault handling on AMD
- fix lea instruction emulation
kvm-65 [6 apr 2008]
- fix hotplug build for non-x86 (Xiantao Zhang)
- ignore reads from the apic EOI register (Glauber Costa)
- fixes Linux 2.6.25-rclate bootup problems
- compile fixes (Carlo Marcelo Arenas Belon)
- fix ftruncate() on hugetlbfs use on older Linux hosts (Marcelo Tosatti)
- endianness fix virtio-block (Anthony Liguori)
- fixes virtio-blk on ppc
- refactor in-kernel PIT to be a separate device (Anthony Liguori)
- separate thread for I/O completions and timers (Marcelo Tosatti)
- fix vmmouse smp (Anthony Liguori)
- fix loading uninitialized variable into apic registers (Marcelo Tosatti)
- fixes apic being disabled on smp Linux guests running X
- disable kvm clock on Voyager or SGI Visual WS (Randy Dunlap)
- s390 support (Carsten Otte, Martin Schwidefsky, Christian Borntraeger, Heiko Carstens)
- fix large pages (Marcelo Tosatti)
- speedup msr processing on Intel via msr bitmap (Sheng Yang)
- add slab shrinker support (Izik Eidus)
- reduces nonswappable footprint under memory pressure
- code cleanup (Joerg Roedel)
- vm refcounting (Izik Eidus)
- only mark a page as accessed if it was really accessed by the guest
- drop slots_lock while in guest mode
- fixes long latencies with iothread
- prepopulate guest pages only after write-protecting them (Marcelo Tosatti)
- fixes smp race leading to guest spinning
kvm-64 [27 mar 2008]
- kvm clock fixes (Glauber Costa)
- kvm clock enable/disable bit (Glauber Costa)
- in kernel pit model (Sheng Yang)
- improves timing accuracy for certain guests
- fix bad tss handling causing ioperm() to fail on the host
- paravirt mmu support (Marcelo Tosatti, Anthony Liguori, Avi Kivity)
- set accessed bit on non-speculative shadow ptes
- minor performance improvement
- fix init_rmode_tss() locking (Marcelo Tosatti)
- fix dirty bit being lost when write permissions are removed from a page (Izik Eidus)
- code cleanups
- module option for disabling flexpriority
- fix apic access page memory leak
- hardware task switching support (Izik Eidus)
- for freedos and similar guests
- fix extboot failures under certain conditions (Anthony Liguori)
- export vcpu thread ID via qemu monitor (Glauber Costa)
- can be used to implement vcpu->cpu pinning
- pci hotplug (Marcelo Tosatti)
- can now add and remove nics and drives dynamically
- fix virtio memory region sizing (Marcelo Tosatti)
- fix segfault on disabled virtio nic (Dor Laor)
- fix sci interrupt on pmtimer wraparound (Dor Laor, Yaniv Kamay)
- fix qemu exit on pci hotplug failure (Ryan Harper)
- fix 'make clean' destroying configuration (Ryota Ozaki)
- ppc userspace updates (Jerone Young)
- improve IDE and SCSI DMA speed
kvm-63 [5 mar 2008]
- portability: make room for the ia64 register stack (Xiantao Zhang)
- fix leak when setting the pv clock to an invalid address (Marcelo Tosatti)
- detect vcpu triple faults (Joerg Roedel)
- fix race when instantiating a shadow pte
- fix host crash on guest kexec
- code cleanups (Harvey Harrison)
- better tsc handling on Intel hosts with stable tscs
- cpu hotplug (Glauber Costa)
- merge qemu-cvs
- new curses display option
- change -hugetlb-path to -mem-path (Anthony Liguori)
- increase pci support from 6 slots to 32 slots
- document ./configure --disable-cpu-emulation (Jerone Young)
- fix powerpc cpu initialization (Jerone Young)
- simplify host_cpuid() assembly code
kvm-62 [26 feb 2008]
- fix oops running external module on 2.6.25 due to mmdrop (Andrea Arcangeli)
- backward compatibility for 2.6.25 desc_struct changes
- fix memory alias mixup (Uri Lublin)
- add file:// migration protocol (Uri Lublin)
- fix reading from character devices with flow control (Jan Kiszka)
- large host page support (Marcelo Tosatti)
- fix screen corruption with high resolutions (Andreas Winkelbauer)
- implement vmware vga for kvm (Soren Hansen, Anthony Liguori)
- even more resolutions for -std-vga (Andreas Winkelbauer)
- code cleanups (Carlo Marcelo Arenas Belon, Harvey Harrison)
- allow up to 16 vcpus (Anthony Liguori, Avi Kivity)
- allow up to 16 memory slots
- improve vcpu_run error reporting
- fix host crash on hosts without EFER (Intel Core not 2s)
- drop kvm private segment descriptor in favor of Linux' desc_struct
- stat counter for hypercalls (Amit Shah)
- fake values for MSR_PERF_STATUS (Alexander Graf)
- needed for Darwin/OS X
- better root pagetable unpinning (Marcelo Tosatti)
- paravirt clock fixes (Glauber Costa, Marcelo Tosatti)
- avoid host hang when guest sets APIC timer to zero
- also fixes live migration of Windows 2000 guests
- fix RHEL 5 i386 smp boot due to timer interrupts being routed to all vcpus
kvm-61 [19 feb 2008]
- paravirtualized clock (Glauber de Oliveira Costa)
- mmu debug compile fix (Marcelo Tosatti)
- last branch record virtualization on AMD (Joerg Roedel)
- fix Windows x64 installer crash on AMD (Joerg Roedel)
- use new kvm semaphore instead of mmap_sem (Izik Eidus)
- fixes potential deadlock
- fix type in vmx header (Ryan Harper)
- make the supported cpuid ioctl system-wide instead of per-vm
- fix setting cr0 from userspace (Paul Knowles)
- add group decoding support to the x86 emulator
- nested paging support on AMD (Joerg Roedel)
- allow access to EFER on 32-bit hosts (Joerg Roedel)
- allows using the nx bit
- fix copy_from_user_inatomic() call non-preemptible hosts (Andrea Arcangeli)
- fix smp Linux on AMD (Joerg Roedel)
- make the code more ppc friendly (Hollis Blanchard)
- add virtual processor identifier support (VPID) on Intel (Sheng Yang)
- don't expose pio page to host userspace on non-x86
- decouple mmio from shadow page tables
- make function pointer tables constant (Jan Engelhardt)
- merge qemu-cvs
- reverse vnc connections
- e1000 nic emulation
- more audio options
- usb serial device emulation
- cdrom/dvd improvements
- timer tick reduction
- e1000 pxe boot rom (Alexey Eremenko)
- fix 'make clean'
- merge bios from boch-cvs
- adds dmi tables
- enables acpi on 32-bit Linux guests
- workaround qemu tcg breakage on non-x86 (Anthony Liguori, Xiantao Zhang)
- adjust external module for removal of fastcall in mainline (Andrea Arcangeli)
- improve qemu main loop
- fix live migration with tpr optimization
- fix external module miscompile with newer kernels (Andrea Arcangeli)
- fix external module include directory priority problems (Andrea Arcangeli)
- fix 32-bit host userspace on 64-bit host kernels
- fix preempt notifier emulation clash with host hardware debug registers (Andrea Arcangeli)
- adjust external module for 2.6.25
- fix ioapic live migration not transferring some registers (Chris Lalancette)
- separate tpr optimization paths for smp and up
- pio emulation on mmio for ia64 (Xiantao Zhang)
- fix qemu timer rearm fallout from last merge (Anders Melchiorsen)
- clean up kvm/qemu interaction (Anthony Liguori)
- improve ppc dcr handling (Jerone Young)
- fix 64-bit guest migration failure due to bad lm_capable_kernel init (Uri Lublin)
- fix bios parallel build (Carlo Marcelo Arenas Belon)
- update virtio abi (Anthony Liguori)
- support virtio abi versioning (Anthony Liguori)
- add powerpc kvm/qemu support (Jerone Young)
- support ppc 440 "bamboo" board (Jerone Young)
- improve migration error handling (Chris Lalancette)
- enable cache on reset in bios
- fix up testsuite warnings (Bernhard Kaindl)
- fix aio deadlocks with smp guests
kvm-60 [23 jan 2008]
- fix compilation with older kernels (Andi Kleen)
- virtio host support (Anthony Liguori, Dor Laor)
- includes block and network devices
- fix power management timer overflow handling
- fix qemu running with older kernels
- boot from scsi/virtio (Anthony Liguori)
- add 1280x800 resolution to -std-vga
- fix acpi sci interrupt generation
- compile fixes (Carlo Marcelo Arenas Belon)
- update ide cdrom to match qemu (Carlo Marcelo Arenas Belon)
- fix extboot on older gcc (Christian Ehrhardt)
- powerpc dcr tests (Christian Ehrhardt)
- rtl8139 is now the default nic type (Guido Guenther)
- acpi power button support (Guido Guenther)
- powerpc testsuite harness (Hollis Blanchard)
- powerpc libkvm support (Jerone Young)
- bump piix4 to rev 3 to avoid slowdown reading pm timer (Marcelo Tosatti)
- migration updates (Uri Lublin)
- ia64 smp support in qemu (Xiantao Zhang)
- fix acpi vapic page on save/restore
- move x86 fpu to x86 specific header (Christian Ehrhardt)
- minor shadow code simplification(Eddie Dong)
- optimize pae pte updates (Eddie Dong, Eric Liu)
- simplify shadow hash table indexing (Eddie Dong)
- kvm_para.h compile fix (Glauber de Oliveira Costa)
- dirty page tracking fix (Izik Eidus)
- fix svm lazy fpu switching (Joerg Roedel)
- fixes Vista x64 on AMD
- only allow vmcall/vmmcall on #UD traps (Sheng Yang)
- fix unbounded latency due to a race in the guest entry code
- with this fix and a realtime kernel, sub 50usec worst case latencies can be achieved
- move apic timer migration to preemptible code
kvm-59 [3 jan 2008]
- merge qemu-cvs
- -drive cache=[on|off] option
- adds scsi passthrough
- ide lba48 support for 120GB+ disk images
- widescreen resolutions for -std-vga
- libkvm compile fixes (Carlo Marcelo Arenas Belon)
- mmu scaling (Marcelo Tosatti, Avi Kivity)
kvm-58 [27 dec 2007]
- add mmu statistics
- log data on write to unimplemented msr
- fix memory corruption (mapcount error) after host fork() (Izik Eidus)
- improve preempt notifier emulation on older kernels (Andrea Arcangeli)
- refactor IDE CHS guessing (Anthony Liguori)
- testsuite improvements
- apic tpr acceleration for Windows guests
- disabled on smp for now
- fix warnings due to qemu merge (Carlo Marcelo Arenas Belon)
- improve support for older kernels (Carlo Marcelo Arenas Belon)
- icache sync in qemu after dma for more archs (Christian Ehrhardt)
- simplify mmio callback (Christian Ehrhardt)
- align gdbstub with qemu-cvs (Jan Kiszka)
- fix compile if kernel/include/asm/ preexists (Sheng Yang)
- fix migration on i386 hosts (Uri Lublin)
- qemu ia64 adjustments (Zhang Xiantao)
kvm-57 [18 dec 2007]
- warn when emulating preempt notifiers
- add pio port 0x80 access test to testsuite
- merge qemu-cvs
- add rtc emulation for ia64 (Xiantao Zhang)
- fix qemu memory allocation off-by-one
- new kernel source layout (virt/kvm/, arch/x86/kvm/)
- coalesce remote tlb flushes when write-protecting guest pages (Eddie Dong)
- lapic debug compile fix (Joerg Roedel)
- fix smp mmu shadow instantiation race (Marcelo Tosatti)
- atomic cmpxchg8b on i386 (Marcelo Tosatti)
- throttle vmx_intr_assist() printk (Ryan Harper)
- portability (Xiantao Zhang)
kvm-56 [14 dec 2007]
- Generalize exception handling mechanism
- fix x86 emulator eflags handling
- avoid exit to userspace on cr8 write if using kernel lapic on Intel
- fix stack instructions emulation in 64-bit mode
- fixes Vista x86
- except on Woodcrests
- fixes Vista x86
- trap cr8 access on amd
- mmu simplification
- fix setting nx bit on shadow pte
- fix inherited mmu permissions
- more portability work (Hollis Blanchard, Xiantao Zhang)
- add cr8 to 'mov cr' instruction emulation (Joerg Roedel)
- exit to userspace on cr8 write if not kernel apic on amd (Joerg Roedel)
- atomically set accessed and dirty bit on guest ptes (Marcelo Tosatti)
- use ->fault() vma op instead of ->nopage()
- remove abi 10 libkvm compatibility
- add some x86 emulator tests
- add many mmu access tests
- fix rpm build on Fedora 8 (Dan Kenigsberg)
- fix 'make sync' on debian and derivatives (Ryan Harper)
- fix live migration (Uri Lublin, Izik Eidus)
- initial ia64 userspace (Xiantao Zhang)
kvm-55 [4 dec 2007]
- remove old hypercall driver (Anthony Liguori)
- disable dirty page logging for main memory (Izik Eidus)
- fix incorrect page count calculation for dirty logging (Izik Eidus)
- improve testsuite 'make clean' (Neo Jia)
- compile fix (Sheng Yang)
- reorganize x86 emulator main switch
- don't bypass mmu on pae cr3 reload if pdptrs changed
- fixes Solaris x86
- use common defines for EFER (Carlo Marcelo Arenas Belon)
- portability (Xiantao Zhang)
- fix kvm_init() error path (Xiantao Zhang)
- ia64 iosapic support (Xiantao Zhang)
kvm-54 [27 nov 2007]
- fix fpu leak on AMD (Amit Shah)
- (on kvm-53, lazy fpu was disabled, so this just improves performance)
- prefetch instruction bytes when emulating
- implement guest page fault bypass on nonpae
- should speed up some 32-bit guests
- add a bunch of statistics
- avoid unnecessary remote tlb flushes
- improves guest smp scaling
- avoid mmu reloads on guest tlb flushes
- mmu code simplification
- disallow using kvm after fork()
- fix failures while injecting external interrupts in real mode
- fixes Mandrake 9 regression
- fix multiple address- and operand- size override prefix emulation
- infrastructure for using host cpu features on guest (Dan Kenigsberg)
- not used yet by qemu
- cmps instruction emulation (Guillaume Thouvenin)
- allows OpenBSD to boot
- cleanups (Hollis Blanchard)
- fix potential memory leak in real-mode smp (Izik Eidus)
- reduce unnecessary dirtying of pages (Izik Eidus)
- mark guest pages as accessed with the Linux lru (Izik Eidus)
- more portability work (Jerone Young, Xiantao Zhang)
- allow new vmx features even if not using in-kernel apic (Sheng Yang)
- refactor shadow mmu size calculation (Xiantao Zhang)
- improve testsuite
- beginning of x86 emulator unit test
- fix compile warnings (Carlo Marcelo Arenas Belon)
- log module version in dmesg on load
kvm-53 [20 nov 2007]
- testsuite: exit on end of test
- batch mode for kvm_stat script
- compile fixes (Carlo Marcelo Arenas Belon, Joe Perches)
- portability (Jerone Young, Zhang Xiantao)
- disable lazy fpu on AMD (Amit Shah)
- should fix instability on AMD
- will cause performance regression, fix in progress
- x86 emulator: fix 'push r/m' emulation (Amit Shah)
- register use reduction in vmx guest entry
- infrastructure for per-vm stats
- extends existing per-vcpu stats
- add mmu, state switch, emulation statistics
- use copy_{to,from}_user to access guest memory (Izik Eidus)
- simplify access to guest page tables (Izik Eidus)
- fix entry to real mode with segment bases beyond 1MB (Jan Kiszka)
- finally kill last use of cr2 in emulator (Sheng Yang)
kvm-52 [12 nov 2007]
- fix efer reload host crash on T2600 and similar processors
- revert sleepy interrupt injection
- fixes "Fault when IDT_Vectoring"
- atomically inject real-mode interrupts
- wbinvd exiting on newer Intel processors (Eddie Dong)
- fixes real-time issues
- fix call/jmp instruction emulation (Izik Eidus)
- fixes Vista x64 installation
- fix save/restore/migrate with multiple nics
- fix build on i386 uniprocessor w/ no ioapic hosts
- fix smp_call_function_single() emulation on older hosts
- fixes smp guests not booting on RHEL 5 hosts
- make qemu/kvm memory allocation match plain qemu more closely (Izik Eidus)
- fixes issues with large memory guests
- libkvm compile fixes (Carlo Marcelo Arenas Belon, Jerone Young)
kvm-51 [7 nov 2007]
- fix some x86 emulator one-byte insns (fixes W2K3 installer again)
- fix host hangs with NMI watchdog on AMD
- fix guest SMP on AMD
- fix dirty page tracking when clearing a guest page (Dor Laor)
- more portability work (Hollis Blanchard, Jerone Young)
- fix FlexPriority with guest smp (Sheng Yang)
- improve rpm specfile (Akio Takebe, Avi Kivity)
- fix external module vs portability work (Andrea Arcangeli)
- remove elpin bios due to license violation
- testsuite shutdown pio port
- don't advertise svm on the guest
- fix reset with kernel apic (Markus Rechberger)
kvm-50 [2 nov 2007]
- fix smp_call_function_mask() emulation on preemptible kernels
- move libkvm into own directory (Hollis Blanchard)
- fix save/restore/migrate for new memory slot management (Uri Lublin)
- compile fixes (Uri Lublin, Avi Kivity)
- fix recursive locking on mmap() (Anthony Liguori)
- remove some cr2 dependencies from x86 emulator
- further simplify x86 emulator
- more portability work (Carsten Otte, Hollis Blanchard)
- Intel FlexPriority support (Sheng Yang)
- fix dirty page tracking on aliased pages (Uri Lublin)
kvm-49 [29 oct 2007]
- Fix PIT time-drift-fix (only with -no-kvm-irqchip) (Dan Kenigsberg)
- Fix vnc auth error with clients <= 3.7 protocol (Dan Kenigsberg)
- Don't spin on hlt with interrupts disabled (Dor Laor)
- Fix pxe boot (Izik Eidus)
- Hide the Intel real-mode tss from userspace (Izik Eidus)
- Automatic memory slot management for libkvm (Izik Eidus)
- Fix problem with std-vga and 4GB guests (Izik Eidus)
- External module compat for smp_call_function_mask() (Laurent Vivier)
- More portability work (Jerone Young, Christian Borntraeger, Zhang Xiantao)
- Fix sleep-in-atomic-context during vcpu init
- Fix 'push imm8' emulation (fixes W2K3 installer)
- Intercept invd and wbinvd on AMD
- Reduce emulator dependency on cr2 (mov abs insns)
- Move page fault processing to common code
- Fix rmap memory consumption oops due to increased rmap usage with swap
- Fix potential memory leak with kernel-allocated memslots (Izik Eidus)
- Export memory slot allocation mechanism (Izik Eidus)
- Add kernel-private memslots (Izik Eidus)
- Fix local apic divide-by-zero (Kevin Pedretti)
- Improve local apic timer wraparound handling (Kevin Pedretti)
- Use newly available smp_call_function_mask() (Laurent Vivier)
- Micro-optimize register usage on vmentry/vmexit (Laurent Vivier)
- Cleanups, compilation fixes (Akio Takebe, Anthony Liguori, Avi Kivity)
kvm-48 [18 oct 2007]
- use precise cpu accounting on ppc and s390 (Christian Borntraeger)
- make guest time accounting actually work (Laurent Vivier)
- fix host memory corruption when setting the guest dirty bit
- allow swapping with older userspace (Anthony Liguori)
- allow custom memory setup using libkvm (Gerd Hoffmann)
kvm-47 [18 oct 2007]
- Reset fixes (Eddie Dong, Avi Kivity)
- Portability work (Carsten Otte)
- Cleanups (Anthony Liguori, Laurent Vivier)
- Simplify guest pagetable dirty bit management
- Fix nx bit for huge pages
- Fix write access to clean large pages (fixes rmap leak)
- Support for Linux 2.6.16 guests (movnti instruction) (Sheng Yang)
- Simplify apic timer backlog processing
- Move interrupt injection out of critical section
- x86 emulator work (Nitin A Kamble)
- restore freebsd support on AMD (fix smsw and lmsw) (Aurelien Jarno)
- Simplify guest page table walker
- Partial guest swapping (Izik Eidus)
- kvmctl improvements (Anthony Liguori)
- libkvm, qemu compilation against older kernels
- guest time accounting (Laurent Vivier)
- configure improvements (Carlo Marcelo Arenas Belon)
- fix 4GB+ configurations (Izik Eidus)
- cross compilation support (Jerone Young)
kvm-46 [10 oct 2007]
- fix host oops on bad guest ioapic accesses
- handle NMIs before enabling host interrupts
- add general guest memory accessors (Izik Eidus)
- allow user control over shadow cache size (Izik Eidus)
- auto tune shadow cache size with guest memory (Izik Eidus)
- allocate guest memory in userspace instead of in kernel (Izik Eidus)
- code style fixes (Mike Day, Anthony Liguori)
- lapic cleanups (Rusty Russell)
- fix acpi interrupt reporting for FreeBSD
- fix color problems on certain displays
- Red Hat 7.1 support
- vmmouse support (Dan Kenigsberg)
- fix sdl window caption when keyboard is captured (Dan Kenigsberg)
- improve libkvm configure script (Jerone Young)
- improve bios compilation support on x86_64 hosts (Laurent Vivier)
- fix acpi processor reporting for Windows 2000 with the ACPI HAL (Sheng Yang)
kvm-45 [2 oct 2007]
- don't use page->private for guest pages (Izik Eidus)
- x86 emulator cleanups, simplifications, and fixes (Laurent Vivier, Qing He)
- apic round robin delivery mode cleanup (Qing He)
- merge qemu-cvs
- fix compilation on older kernels (Rusty Russell, Avi Kivity)
- reduce tap networking latency
- fix FC6 x86_64 booting with -no-kvm
- fix code dump on exception
kvm-44 [23 sep 2007]
- fix smp guest boot
- fix IDE emulation bug with newer guest kernels (S.Çağlar Onur)
- support VMware server as guest (Ryan Harper)
- fix smp race in shadow code (Izik Eidus)
- allow guest page faults to bypass kvm on Intel (performance boost)
kvm-43 [21 sep 2007]
- fix ioapic edge-triggered interrupt handling
kvm-42 [20 sep 2007]
- important host oops fix
- document -no-kvm-irqchip option in qemu help message (Carlo Marcelo Arenas Belon)
- acpi bios: export pci irqs as active high
- avoid redelivery of edge-triggered ioapic interrupts if already in service
- implement ioapic polarity
- fix x86 emulator merge problems (Nitin A Kamble, Laurent Vivier)
- fix x86 repne decoding (fixes OpenBSD boot regression) (Laurent Vivier)
- install kvm_para.h (Gerd Hoffman)
kvm-41 [19 sep 2007]
- refactor hypercall infrastructure for simplicity and better smp support (Anthony Liguori)
- fix ioapic level triggered interrupt redelivers (solves networking stalls)
- reduce efer reloads with 32-bit guests; minor performance improvement
- split x86 emulator decode and execute stages (Laurent Vivier)
- fix pic interrupt delivery (solves time going double speed on x86_64 Linux guests) (Qing He)
- adaptive live migration bandwidth limits (Uri Lublin)
kvm-40 [16 sep 2007]
- fix guest reboot (most scenarios)
- further x86 emulator work (Nitin A Kamble)
- compile fixes for older kernels
- make the external module work again
kvm-39 [12 sep 2007]
- provide div64_64() for older kernels
- improve emulation failure reporting
- more x86 emulator work (push imm8, pushf, call near) (Nitin A Kamble)
- don't use TPR shadow on i386 (Sheng Yang)
kvm-38 [12 sep 2007]
- fix fpu indication for Solaris (Amit Shah)
- Avoid GFP_NOWAIT allocation in mmu
- Fix runtime smp_processor_id() warning in lapic
- Move vcpu loop into subarch independent loop
- Rename kvm_arch_ops to kvm_x86_ops (Christian Ehrhardt)
- Fix missing "genapic" on i386 (Eddie Dong)
- Fix lapic hrtimer migration (Qing He)
- Fix lapic 64-bit division on i386 (Jindrich Makovicka)
- Simplify memory allocation ioctl (Laurent vivier)
- Keep control register shadows in sync (Rusty Russell)
- Retire invlpg (Rusty Russell)
- Expose get_cs_db_l_bits for kvm-lite (Rusty Russell)
- Fix network boot (Anthony Liguori)
- Round up memory in libkvm (Anthony Liguori)
- Fix option ROM loading (Anthony Liguori)
- Revert FACP ACPI change for Vista
- Fix segfault with -no-kvm
- lapic hrtimer external module compatibility (Qing He, Avi Kivity)
- improved (still imprefect) reboot
- better bios smp detection
kvm-37 [9 sep 2007]
- in-kernel lapic, ioapic, and pic (Eddie Dong, Qing He, Sheng Yang, Gregory Haskins, Dor Laor, Avi Kivity)
- split segment reload (vmx microoptimization) (Laurent Vivier)
- fix vga redraw regression (Izik Eidus)
- fix testsuite compilation with older assemblers (H. Peter Anvin)
kvm-36 [22 aug 2007]
- support guests with more than 2GB of RAM on 64-bit hosts (Izik Eidus)
- fix rare host oops on guest context switch
- avoid smp_call_function_single() warning on suspend/resume
- more real mode emulator work (Nitin A Kamble)
- Windows x64 support (Sheng Yang)
- close minor signal handling race
- carry bios in kvm source tree for easier maintenance
- fix -std-vga (Uri Lublin)
- advertise kvm in vnc window title (Matthew Kent)
- fix Windows SMP guests consuming cpu time when idle (Igor Lvovsky)
kvm-35 [15 aug 2007]
- fix kvm refusing to load on Core processors (Glauber de Oliveira Costa)
- improve qemu monitor handling CR/LF sequences (Jim Paris)
- fix compile warning in qemu (Luca Tettamanti)
kvm-34 [13 aug 2007]
- make kvm preemptible
- allow calling sleeping functions in the kvm exit handlers (Shaohua Li)
- this is a first step in getting guest swapping
- fix running kvm on nx-incapable host kernel on nx-capable hardware
- fix more fallback from the x86 emulator writeback changes (Aurelien Jarno, Avi Kivity)
- remove vmx specific code from subarch independent code (Gregory Haskins)
- allocate vcpus as needed (Rusty Russell)
- consolidate x86 emulator guest read/write code (Laurent Vivier)
- cleanup string pio instruction emulation (Laurent Vivier)
- ensure all cpus have the same vmx features (Sheng Yang)
- version string for external module
- disable long mode capability bit on 32-bit kernels
- fix qemu -isapc (Uri Lublin)
- fixes for smp live migration
- this is still raw
- fix unhandled wrmsr MSR_CSTAR on i386 (Luca Tettamanti)
- some migration fixes (Jim Paris)
- the usual cleanups and minor fixes (various but mostly Rusty)
kvm-33 [23 jul 2007]
- fix massive performance regression
kvm-32 [23 jul 2007]
- fix oops with the slub allocator (CONFIG_SLUB)
- fix cmov instruction emulation, trashed by the mmio rmw fix
- fix rare, silent data corruption on writes that cross a page boundary and touch a page table (Aurelien Jarno, Avi Kivity)
- fix race between vm creation and vcpu hotunplug (Rusty Russell)
- fix guest turning on pae with invalid pdptres (Rusty Russell)
- adapt external module to changed kmem_cache_create() api
- allow external module on 2.6.22 i386 nonpae
- fix regression in network throughput caused by guest smp changes (Aurelien Jarno, Avi Kivity)
- live migration updates (Uri Lublin)
- minor cleanups (Nguyen Anh Quynh, Avi Kivity)
kvm-31 [19 jul 2007]
- a few cleanups that somehow evaded kvm-30 (Jeff Dike, Rusty Russell)
- allow the external module to compile on older kernels.
kvm-30 [19 jul 2007]
- minor fixes and cleanups (Jeff Dike, Rusty Russell, Avi Kivity)
- kernel pio string write (Eddie Dong)
- guest smp kernel fixes
- rdmsr and wrmsr real mode emulation
- fix real mode shadow pages aliasing nx large page shadows
- enable guest smp in qemu
- fix external module installer
- revert ide enable changes that caused an I/O regression
kvm-29 [12 jul 2007]
- live migration from 32-bit hosts to 64-bit hosts (Uri Lublin)
- monotonic timestamp counter on Intel
- more real mode support (Nitin A Kamble)
- infrastructure for in-kernel PIC and APIC (Gregory Haskins, Eddie Dong)
- fix read-modify-write to mmio (fixes F7 installer) (Luca Tettamanti)
- fix rebooting a long-running guest
- reliably detect if svm was disabled by bios (Joerg Roedel)
- suspend/resumes fixes (will not work with older kernels)
- fix nx confusion with large pages and real mode
- remove dependency on libuuid
- fix registers access in monitor/gdbstub (Anthony Liguori)
- minor fixes and cleanups (various)
kvm-28 [10 jun 2007]
- fix host oops on guest context switch
- many code cleanups (Nguyen Anh Quynh, others)
- prepare kernel for guest smp
- update libkvm for guest smp
- update testsuite for guest smp
- emulate hlt in real mode (avoids crash when booting from unformatted disk)
- initialize ata ports for Fedora 7 guests (Luca Tettamanti)
kvm-27 [3 jun 2007]
- use slab cache for mmu shadow pages
- make shadow pte updates atomic (for guest smp)
- general mmu cleanups
kvm-26 [27 may 2007]
- implement wbinvd emulation, triggered by Windows Vista
- compile fixes (Markus Rechberger, Avi Kivity)
kvm-25 [24 may 2007]
- massive performance increase (Eddie Dong)
- regenerate bios from latest bochs sources, hopefully fixing a regression with some guests
- some testsuite work (Anthony Lihuori, Eddie Dong, Avi Kivity)
- minor fixes (various)
kvm-24 [8 may 2007]
- fix oops loading kvm-intel module on i386 with highmem
kvm-23 [7 may 2007]
- OpenBSD 4.1 i386 support (Matthew Gregan)
- Fix host and guest crashes on reboot
kvm-22 [6 may 2007]
- Significant performance improvements (Anthony Liguori, Eddie Dong, Qing He, Avi Kivity)
- Fix longstanding bug: time runs at double speed on x86_64 Linux (Qing He)
- Windows Vista 32-bit support (Qing He, Jun Nakajima)
- Support for kvm abi 10 modules
- Minor updates
kvm-21 [27 apr 2007]
- fix regression on Core (not Core 2) processors
- performance improvements (Eddie Dong, Anthony Liguori)
- minor fixes
kvm-20 [24 apr 2007]
- Windows 2000 support
- performance enhancements
- patch against latest kernel tree included in tarball
- fix oops with 32-bit nonpae guests
kvm-19 [16 apr 2007]
- bug fixes
- memory aliasing api
kvm-18 [26 mar 2007]
- merged new userspace API
- revert the optimization which killed some 32-bit Linux guests
- reboot support on Intel hosts (AMD are already supported)
- better timekeeping under load (Uri Lublin)
- other minor fixes and cleanups
kvm-17 [25 mar 2007]
- live migration enhancements (Uri Lublin)
- better/working acpi support
- revert to unhacked qemu bios
- fix some 32-bit nonpae guests (*BSD)
- initial ballooning support
- random fixes
kvm-16 [7 mar 2007]
- bug fixes (including a nasty one on module load)
- use lanana assigned minor device number for /dev/kvm
kvm-15 [26 feb 2007]
- live migration with kvm (Uri Lublin)
- based on Anthony Liguori's qemu patches
- new userspace interface (work in progress)
- the usual random fixes
kvm-14 [19 feb 2007]
- qemu 0.9.0
- too many goodies to list
- kvm can no longer share qemu's bios on Intel hosts due to real mode trouble. use the supplied bios.
- migration now based on Anthony Liguori's live migration patches (Uri Lublin)
- currently, only non-live migration is supported under kvm
- handle smi on host on AMD hosts (Joerg Roedel)
- random fixes
kvm-13 [8 feb 2007]
- add dirty page tracking in some corner cases for live migration
- fix lockups on nx-challenged hosts
- host suspend/resume
- nobody's testing this, so it's probably broken
- host cpu hotplug support
- beginning of paravirt support (Ingo Molnar)
- guest reboot support (Markus Rechberger, Joerg Roedel)
- pio latency reduction (Anthony Liguori)
- stone age kernel compatibility (Markus Rechberger)
- the usual cleanups and stability fixes
kvm-12 [23 jan 2007]
- More migration work (Uri Lublin)
- savevm/loadvm (and migration) work on AMD (Leonard Norrgard)
- More guest support
- mmu testsuite and fixes
- Windows ACPI install/run support (Dor Laor)
- Fix host reboot on guest reboot on AMD (Joerg Roedel)
kvm-11 [11 jan 2007]
- stabilization fixes
- vmexit profiling (Ingo Molnar; requires Linux 2.6.20+)
kvm-10 [7 jan 2007]
- more hypercall work
- cleanup irq handling
- shadow page table caching
- migration fixes
- stabilization fixes
kvm-9 [31 dec 2006]
- API documentation (James Jacobsson)
- More stabilization fixes (Yoshimi Ichiyanagi, Ingo Molnar, Nguyen Anh Quynh)
- Interactivity improvements (Dor Laor)
kvm-8 [21 dec 2006]
- msr fixes (Michael Riepe)
- more guest support (Michael Riepe)
- random fixes
- fpu state corruption fix on AMD hosts
kvm-7 [12 dec 2006]
- prevent loading arch module on wrong hardware
- fix for macbooks
- other minor fixes
kvm-6 [11 dec 2006]
- AMD 32-bit host support (Anthony Liguori)
- more migration work
- stabilization
- improved performance
- improved guest support on AMD
kvm-5 [28 nov 2006]
- AMD SVM support (x86-64 hosts only)
- Preliminary live migration support
- 'make install' also installs kernel modules, if selected
- random fixes
kvm-4 [21 nov 2006]
- added the msr work
- suspend/resume should work now
- more vmdk compatibility work
- random build updates
kvm-3 [15 nov 2006]
[Avi Kivity retained the natural number versioning after he contemplated the confusion that can arise from having releases 1, 2, and 0.3]
Kernel module
- make exit reason numbers explicit
- sync kernel module with -mm tree
- asm constraint fixes
- userspace interface blurb
- segment restore across mode switch (fixes etherboot)
- segment asm constraint fix (Bernhard Rosenkraenzer)
- segment access cleanup
libkvm:
- better error reporting (Simon Kagstrom)
- 'make clean'
- attributions and license
kvmctl:
- add option to launch guest in 32-bit mode
- add test programs
qemu/kvm:
- autodetect kvm presence (Simon Kagstrom)
General
- fix host arch detection on debian
- fix ./configure on debian (Gildas)
- toplevel 'make clean'
?? [9 nov 2006]
- much easier to get running, see updated HOWTO
- now just one download, get yours while supplies last
- single qemu binary for kvm and non-kvm runs (Anthony Liguori)
- accompanying external kernel module package has all bugfixes folded in (plus a bit of cosmetics)
lkml submission v4 [5 nov 2006]
- [1]
- detect msrs on host dynamically. Avoids oopses on non-ia32e capable processors.
- web site: http://kvm.sourceforge.net
- slightly rediffed
lkml submission v3 [26 oct 2006]
- [2]
- mailing list: kvm-devel@public.gmane.org (http://lists.sourceforge.net/lists/listinfo/kvm-devel)
- applied code review comments
- fixed set_sregs() ioctl corrupting guest state if cr0.pe changed (a polite way of saying that loading a saved vm was broken)
lkml submission v2 [23 oct 2006]
- [3]
- fixed a lockup on i386 with host memory >= 4GB
- finer patch split to conform to vger limits
- minor fixes
- send through script to avoid mailer damage