Update for 0.12.4 release
[qemu.git] / Changelog
blob4feb1867e67ea643b8295a05f73d56dc9ac8e87b
1 version 0.12.4
2  - Workaround for broken OSS_GETVERSION on FreeBSD, part two (Juergen Lock)
3  - oss: fix fragment setting (malc)
4  - oss: issue OSS_GETVERSION ioctl only when needed (malc)
5  - oss: refactor code around policy setting (malc)
6  - oss: workaround for cases when OSS_GETVERSION is not defined (malc)
7  - block: Free iovec arrays allocated by multiwrite_merge() (Stefan Hajnoczi)
8  - lsi: fix segfault in lsi_command_complete (Gerd Hoffmann)
9  - lsi: pass lsi_request to lsi_reselect (Gerd Hoffmann)
10  - lsi: move dma_len+dma_buf into lsi_request (Gerd Hoffmann)
11  - lsi: move current_dev into lsi_request (Gerd Hoffmann)
12  - lsi: have lsi_request for the whole life time of the request. (Gerd Hoffmann)
13  - lsi: use QTAILQ for lsi_queue (Gerd Hoffmann)
14  - tcp/mips: Change TCG_AREG0 (fp -> s0) (Stefan Weil)
15  - sh_pci: fix memory and I/O access (Aurelien Jarno)
16  - Fix incoming migration with iothread (Marcelo Tosatti)
17  - Fix SIGFPE for vnc display of width/height = 1 (Chris Webb)
18  - net: remove broken net_set_boot_mask() boot device validation (Eduardo Habkost)
19  - qcow2: Remove request from in-flight list after error (Kevin Wolf)
20  - qcow2: Don't ignore immediate read/write failures (Kevin Wolf)
21  - block: Fix multiwrite memory leak in error case (Kevin Wolf)
22  - block: Fix error code in multiwrite for immediate failures (Kevin Wolf)
23  - block: Fix multiwrite error handling (Kevin Wolf)
24  - scsi-disk: fix buffer overflow (Gerd Hoffmann)
25  - qcow2: Rewrite alloc_refcount_block/grow_refcount_table (Kevin Wolf)
26  - qcow2: Factor next_refcount_table_size out (Kevin Wolf)
27  - block: avoid creating too large iovecs in multiwrite_merge (Christoph Hellwig)
28  - json-parser: Fix segfault on malformed input (Kevin Wolf)
29  - linux-user: switch default ppc64 CPU to 970fx from 970 (Aurelien Jarno)
30  - target-sh4: MMU: fix store queue addresses (Aurelien Jarno)
31  - target-sh4: MMU: fix ITLB priviledge check (Aurelien Jarno)
32  - target-sh4: MMU: fix mem_idx computation (Aurelien Jarno)
33  - sh7750: handle MMUCR TI bit (Aurelien Jarno)
34  - UHCI spurious interrut fix (Paul Brook)
35  - tcg/mips: fix branch offset during retranslation (Aurelien Jarno)
36  - tcg/arm: correctly save/restore registers in prologue/epilogue (Aurelien Jarno)
37  - workaround for cmd646 bmdma register access while no dma is active (Igor V. Kovalenko)
38  - Fix corner case in chardev udp: parameter (Jan Kiszka)
39  - Don't set default monitor when there is a mux'ed one (Jan Kiszka)
40  - spelling typo (compatibilty) in hw/fw_cfg.c (Vagrant Cascadian)
41  - fdc: fix drive property handling. (Gerd Hoffmann)
42  - target-i386: fix commit c22549204a6edc431e8e4358e61bd56386ff6957 (TeLeMan)
43  - target-i386: fix SIB decoding with index = 4 (Aurelien Jarno)
44  - Fix segfault with ram_size > 4095M without kvm (Ryan Harper)
45  - target-i386: Fix long jumps/calls in long mode with REX.W set (malc)
46  - target-i386: fix lddqu SSE instruction (Aurelien Jarno)
47  - qemu-char.c: drop debug printfs from qemu_chr_parse_compat (Jan Kiszka)
48  - fix undefined shifts by >32 (Paolo Bonzini)
49  - Fix qemu -net user,hostfwd= example (Aurelien Jarno)
51 version 0.12.3
52   - kvm: Fix eflags corruption in kvm mode (Jan Kiszka)
53   - qcow2: Fix access after end of array (Kevin Wolf)
54   - ide save/restore pio/atapi cmd transfer fields and io buffer (Marcelo Tosatti)
55   - net: Monitor command set_link finds only VLAN clients, fix (Markus Armbruster)
56   - net: info network shows only VLAN clients, fix (Markus Armbruster)
57   - net: net_check_clients() checks only VLAN clients, fix (Markus Armbruster)
58   - net: Fix bogus "Warning: vlan 0 with no nics" with -device (Markus Armbruster)
59   - net: net_check_clients() runs too early to see -device, fix (Markus Armbruster)
60   - net: Remove unused net_client_uninit() (Markus Armbruster)
61   - don't dereference NULL after failed strdup (Jim Meyering)
62   - virtio-net: fix network stall under load (Tom Lendacky)
63   - json: fix PRId64 on Win32 (Roy Tam)
64   - fix inet_parse typo (Marcelo Tosatti)
65   - iothread: fix vcpu stop with smp tcg (Marcelo Tosatti)
66   - segfault due to buffer overrun in usb-serial (David S. Ahern)
67   - qcow2: Fix signedness bugs (Kevin Wolf)
68   - Do not ignore error, if open file failed (-serial /dev/tty) (Evgeniy Dushistov)
69   - pc-bios: update to newer version of (stable) seabios (Anthony Liguori)
70   - target-mips: fix ROTR and DROTR by zero (Aurelien Jarno)
71   - target-mips: fix CpU exception for coprocessor 0 (Nathan Froyd)
72   - tcg/mips: fix crash in tcg_out_qemu_ld() (Aurelien Jarno)
73   - target-mips: don't call cpu_loop_exit() from helper.c (Aurelien Jarno)
74   - virtio-blk: Fix error cases which ignored rerror/werror (Kevin Wolf)
75   - virtio-blk: Fix restart after read error (Kevin Wolf)
76   - virtio_blk: Factor virtio_blk_handle_request out (Kevin Wolf)
77   - cirrus: Properly re-register cirrus_linear_io_addr on vram unmap (Jan Kiszka)
78   - qcow2: Don't ignore qcow2_alloc_clusters return value (Kevin Wolf)
79   - qcow2: Don't ignore update_refcount return value (Kevin Wolf)
80   - qcow2: Allow updating no refcounts (Kevin Wolf)
81   - qcow2: Improve error handling in update_refcount (Kevin Wolf)
82   - qcow2: Fix error handling in grow_refcount_table (Kevin Wolf)
83   - block: Return original error codes in bdrv_pread/write (Kevin Wolf)
84   - qcow2: Return 0/-errno in qcow2_alloc_cluster_offset (Kevin Wolf)
85   - qcow2: Return 0/-errno in get_cluster_table (Kevin Wolf)
86   - qcow2: Fix error handling in qcow_save_vmstate (Kevin Wolf)
87   - qcow2: Fix error handling in qcow2_grow_l1_table (Kevin Wolf)
88   - win32/sdl: Fix toggle full screen (Herve Poussineau)
89   - win32: pair qemu_memalign() with qemu_vfree() (Herve Poussineau)
90   - vnc_refresh: calling vnc_update_client might free vs (Stefano Stabellini)
91   - Musicpal: Fix descriptor walk in eth_send (Jan Kiszka)
92   - Musicpal: Fix wm8750 I2C address (Jan Kiszka)
93   - fix savevm command without id or tag (Marcelo Tosatti)
94   - reduce number of reinjects on ACK (Gleb Natapov)
95   - QMP: Fix asynchronous events delivery (Luiz Capitulino)
96   - Documentation: Add missing documentation for qdev related command line options (Stefan Weil)
97   - pc: add driver version compat properties (Gerd Hoffmann)
98   - scsi: device version property (Gerd Hoffmann)
99   - ide: device version property (Gerd Hoffmann)
100   - QMP: Emit asynchronous events on all QMP monitors (Adam Litke)
101   - Fix QEMU_WARN_UNUSED_RESULT (Kevin Wolf)
103 version 0.12.2:
104   - Qemu's internal TFTP server breaks lock-step-iness of TFTP (Milan Plzik)
105   - osdep.c: Fix accept4 fallback (Kevin Wolf)
106   - pc: add rombar to compat properties for pc-0.10 and pc-0.11 (Gerd Hoffmann)
107   - pci: allow loading roms via fw_cfg. (Gerd Hoffmann)
108   - roms: rework rom loading via fw (Gerd Hoffmann)
109   - fw_cfg: rom loader tweaks. (Gerd Hoffmann)
110   - roms: minor fixes and cleanups. (Gerd Hoffmann)
111   - pc: add machine type for 0.12 (Gerd Hoffmann)
112   - loader: more ignores for rom intended to be loaded by the bios (Aurelien Jarno)
113   - vnc_refresh: return if vd->timer is NULL (Stefano Stabellini)
114   - QMP: Don't free async event's 'data' (Luiz Capitulino)
115   - Handle TFTP ERROR from client (Thomas Horsten)
116   - dmg: fix ->open failure (Christoph Hellwig)
117   - virtio-pci: thinko fix (Michael S. Tsirkin)
118   - pc-bios: Update README (SeaBIOS) (Stefan Weil)
119   - vmware_vga: Check cursor dimensions passed from guest to avoid buffer overflow (Roland Dreier)
120   - remove pending exception on vcpu reset. (Gleb Natapov)
121   - Fix CPU topology initialization (Jiri Denemark)
122   - MCE: Fix bug of IA32_MCG_STATUS after system reset (Huang Ying)
123   - linuxboot: fix gdt address calculation (Avi Kivity)
124   - QMP: Drop wrong assert() (Luiz Capitulino)
125   - vnc: Fix artifacts in hextile decoding (Anthony Liguori)
126   - target-i386: Fix "call im" on x86_64 when executing 32-bit code (Aurelien Jarno)
127   - Add missing newline at the end of options list (Michael Tokarev)
128   - Don't load options roms intended to be loaded by the bios in qemu (Avi Kivity)
129   - USB: Improve usbdevice error messages (Scott Tsai)
130   - cpu-all.h: fix cpu_get_real_ticks() #ifdef (Aurelien Jarno)
131   - alpha: fix compile (Blue Swirl)
132   - user_only: compile everything with -fpie (Kirill A. Shutemov)
133   - fdc/sparc32: don't hang on detection under OBP (Artyom Tarasenko)
134   - scsi-disk: Inquiry with allocation length of CDB < 36 (v4) (Artyom Tarasenko)
135   - e1000: fix init values for command register (Michael S. Tsirkin)
137 version 0.12.1:
138   - loader: fix rom loading at address 0 (fixes target-arm) (Aurelien Jarno)
139   - loader: fix rom_copy (fixes multiboot) (Kevin Wolf)
141 version 0.12.0:
143   - Update to SeaBIOS 0.5.0
144   - e1000: fix device link status in Linux (Anthony Liguori)
145   - monitor: fix QMP for balloon command (Luiz Capitulino)
146   - QMP: Return an empty dict by default (Luiz Capitulino)
147   - QMP: Only handle converted commands (Luiz Capitulino)
148   - pci: support PCI based option rom loading (Gerd Hoffman/Anthony Liguori)
149   - Fix backcompat for hotplug of SCSI controllers (Daniel P. Berrange)
150   - fdc: fix migration from 0.11 (Juan Quintela)
151   - vmware-vga: fix segv on cursor resize. (Dave Airlie)
152   - vmware-vga: various fixes (Dave Airlie/Anthony Liguori)
153   - qdev: improve property error reporting. (Gerd Hoffmann)
154   - fix vga names in default_list (Gerd Hoffmann)
155   - usb-host: check mon before using it. (Gerd Hoffmann)
156   - usb-net: use qdev for -usbdevice (Gerd Hoffmann)
157   - monitor: Catch printing to non-existent monitor (Luiz Capitulino)
158   - Avoid permanently disabled QEMU monitor when UNIX migration fails (Daniel P. Berrange)
159   - Fix loading of ELF multiboot kernels (Kevin Wolf)
160   - qemu-io: Fix memory leak (Kevin Wolf)
161   - Fix thinko in linuxboot.S (Paolo Bonzini)
162   - target-i386: Fix evaluation of DR7 register (Jan Kiszka)
163   - vnc: hextile: do not generate ForegroundSpecified and SubrectsColoured tiles (Anthony Liguori)
164   - S390: Bail out without KVM (Alexander Graf)
165   - S390: Don't tell guest we're updating config space (Alexander Graf)
166   - target-s390: Fail on unknown instructions (Alexander Graf)
167   - osdep: Fix runtime failure on older Linux kernels (Andre Przywara)
168   - Fix a make -j race (Juergen Lock)
169   - target-alpha: Fix generic ctz64. (Richard Henderson)
170   - s390: Fix buggy assignment (Stefan Weil)
171   - target-mips: fix user-mode emulation startup (Nathan Froyd)
172   - target-i386: Update CPUID feature set for TCG (Andre Przywara)
173   - s390: fix build on 32 bit host (Michael S. Tsirkin)
174         
175 version 0.12.0-rc2:
177   - v2: properly save kvm system time msr registers (Glauber Costa)
178   - convert more monitor commands to qmp (Luiz Capitulino)
179   - vnc: fix capslock tracking logic. (Gerd Hoffmann)
180   - QemuOpts: allow larger option values. (Gerd Hoffmann)
181   - scsi: fix drive hotplug. (Gerd Hoffmann)
182   - pci: don't hw_error() when no slot is available. (Gerd Hoffmann)
183   - pci: don't abort() when trying to hotplug with acpi off. (Gerd Hoffmann)
184   - allow default devices to be implemented in config file (Gerd Hoffman)
185   - vc: colorize chardev title line with blue background. (Gerd Hoffmann)
186   - chardev: make chardevs specified in config file work. (Gerd Hoffmann)
187   - qdev: also match bus name for global properties (Gerd Hoffmann)
188   - qdev: add command line option to set global defaults for properties. (Gerd Hoffmann)
189   - kvm: x86: Save/restore exception_index (Jan Kiszka)
190   - qdev: Replace device names containing whitespace (Markus Armbruster)
191   - fix rtc-td-hack on host without high-res timers (Gleb Natapov)
192   - virtio: verify features on load (Michael S. Tsirkin)
193   - vmware_vga: add rom file so that it boots. (Dave Airlie)
194   - Do not abort on qemu_malloc(0) in production builds (Anthony Liguori)
195   - Fix ARM userspace strex implementation. (Paul Brook)
196   - qemu: delete rule target on error (Michael S. Tsirkin)
197   - QMP: add human-readable description to error response (Markus Armbruster)
198   - convert more monitor commands to QError (Markus Armbruster)
199   - monitor: Fix double-prompt after "change vnc passwd BLA" (Markus Armbruster)
200   - monitor: do_cont(): Don't ask for passwords (Luiz Capitulino)
201   - monitor: Introduce 'block_passwd' command (Luiz Capitulino)
202   - pci: interrupt disable bit support (Michael S. Tsirkin)
203   - pci: interrupt status bit implementation (Michael S. Tsirkin)
204   - pci: prepare irq code for interrupt state (Michael S. Tsirkin)
205   - msix: function mask support (Michael S. Tsirkin)
206   - msix: macro rename for function mask support (Michael S. Tsirkin)
207   - cpuid: Fix multicore setup on Intel (Andre Przywara)
208   - kvm: x86: Fix initial kvm_has_msr_star (Jan Kiszka)
209   - Update OpenBIOS images to r640 (Aurelien Jarno)     
211 version 0.10.2:
213   - fix savevm/loadvm (Anthony Liguori)
214   - live migration: fix dirty tracking windows (Glauber Costa)
215   - live migration: improve error propogation (Glauber Costa)
216   - qcow2: fix image creation for > ~2TB images (Chris Wright)
217   - hotplug: fix error handling for if= parameter (Eduardo Habkost)
218   - qcow2: fix data corruption (Nolan Leake)
219   - virtio: fix guest oops with 2.6.25 kernels (Rusty Russell)
220   - SH4: add support for -kernel (Takashi Yoshii, Aurelien Jarno)
221   - hotplug: fix closing of char devices (Jan Kiszka)
222   - hotplug: remove incorrect check for device name (Eduardo Habkost)
223   - enable -k on win32 (Herve Poussineau)
224   - configure: use LANG=C for grep (Andreas Faerber)
225   - fix VGA regression (malc)
226         
227 version 0.10.1:
229   - virtio-net: check right return size on sg list (Alex Williamson)
230   - Make qemu_announce_self handle holes (live migration after hotplug)
231     (Marcelo Tosatti)
232   - Revert r6804-r6808 (qcow2 allocation info).  This series of changes added
233     a high cost to startup for large qcow2 images (Anthony Liguori)
234   - qemu-img: fix help message (Aurelien Jarno)
235   - Fix build for non-default installs of SDL (Anthony Liguori)
236   - Fix race condition in env->interrupt_request.  When using TCG and a dynticks
237     host timer, this condition could cause TCG to get stuck in an infinite
238     loop (Aurelien Jarno)
239   - Fix reading encrypted hard disk passwords during early startup (Jan Kiszka)
240   - Fix encrypted disk reporting in 'info block' (Jan Kiszka)
241   - Fix console size with tiny displays (MusicPal) (Jan Kiszka)
242   - Improve error handling in bdrv_open2 (Jan Kiszka)
243   - Avoid leaking data in mux'ed character devices (Jan Kiszka)
244   - Fix initial character device reset (no banner in monitor) (Jan Kiszka)
245   - Fix cpuid KVM crash on i386 host (Lubomir Rintel)
246   - Fix SLES10sp2 installation by adding ISTAT1 register to LSI SCSI emulation
247     (Ryan Harper)
249 version 0.10.0:
251   - TCG support (No longer requires GCC 3.x)
252   - Kernel Virtual Machine acceleration support
253   - BSD userspace emulation
254   - Bluetooth emulation and host passthrough support
255   - GDB XML register description support
256   - Intel e1000 emulation
257   - HPET emulation
258   - VirtIO paravirtual device support
259   - Marvell 88w8618 / MusicPal emulation
260   - Nokia N-series tablet emulation / OMAP2 processor emulation
261   - PCI hotplug support
262   - Live migration and new save/restore formats
263   - Curses display support
264   - qemu-nbd utility to mount supported block formats
265   - Altivec support in PPC emulation and new firmware (OpenBIOS)
266   - Multiple VNC clients are now supported
267   - TLS encryption is now supported in VNC
268   - MIPS Magnum R4000 machine (Hervé Poussineau)
269   - Braille support (Samuel Thibault)
270   - Freecom MusicPal system emulation (Jan Kiszka)
271   - OMAP242x and Nokia N800, N810 machines (Andrzej Zaborowski)
272   - EsounD audio driver (Frederick Reeve)
273   - Gravis Ultrasound GF1 sound card (Tibor "TS" Schütz)
274   - Many, many, bug fixes and new features
276 version 0.9.1:
278   - TFTP booting from host directory (Anthony Liguori, Erwan Velu)
279   - Tap device emulation for Solaris (Sittichai Palanisong)
280   - Monitor multiplexing to several I/O channels (Jason Wessel)
281   - ds1225y nvram support (Herve Poussineau)
282   - CPU model selection support (J. Mayer, Paul Brook, Herve Poussineau)
283   - Several Sparc fixes (Aurelien Jarno, Blue Swirl, Robert Reif)
284   - MIPS 64-bit FPU support (Thiemo Seufer)
285   - Xscale PDA emulation (Andrzej Zaborowski)
286   - ColdFire system emulation (Paul Brook)
287   - Improved SH4 support (Magnus Damm)
288   - MIPS64 support (Aurelien Jarno, Thiemo Seufer)
289   - Preliminary Alpha guest support (J. Mayer)
290   - Read-only support for Parallels disk images (Alex Beregszaszi)
291   - SVM (x86 virtualization) support (Alexander Graf)
292   - CRIS emulation (Edgar E. Iglesias)
293   - SPARC32PLUS execution support (Blue Swirl)
294   - MIPS mipssim pseudo machine (Thiemo Seufer)
295   - Strace for Linux userland emulation (Stuart Anderson, Thayne Harbaugh)
296   - OMAP310 MPU emulation plus Palm T|E machine (Andrzej Zaborowski)
297   - ARM v6, v7, NEON SIMD and SMP emulation (Paul Brook/CodeSourcery)
298   - Gumstix boards: connex and verdex emulation (Thorsten Zitterell)
299   - Intel mainstone II board emulation (Armin Kuster)
300   - VMware SVGA II graphics card support (Andrzej Zaborowski)
302 version 0.9.0:
304   - Support for relative paths in backing files for disk images
305   - Async file I/O API
306   - New qcow2 disk image format
307   - Support of multiple VM snapshots
308   - Linux: specific host CDROM and floppy support
309   - SMM support
310   - Moved PCI init, MP table init and ACPI table init to Bochs BIOS
311   - Support for MIPS32 Release 2 instruction set (Thiemo Seufer)
312   - MIPS Malta system emulation (Aurelien Jarno, Stefan Weil)
313   - Darwin userspace emulation (Pierre d'Herbemont)
314   - m68k user support (Paul Brook)
315   - several x86 and x86_64 emulation fixes
316   - Mouse relative offset VNC extension (Anthony Liguori)
317   - PXE boot support (Anthony Liguori)
318   - '-daemonize' option (Anthony Liguori)
320 version 0.8.2:
322   - ACPI support
323   - PC VGA BIOS fixes
324   - switch to OpenBios for SPARC targets (Blue Swirl)
325   - VNC server fixes
326   - MIPS FPU support (Marius Groeger)
327   - Solaris/SPARC host support (Juergen Keil)
328   - PPC breakpoints and single stepping (Jason Wessel)
329   - USB updates (Paul Brook)
330   - UDP/TCP/telnet character devices (Jason Wessel)
331   - Windows sparse file support (Frediano Ziglio)
332   - RTL8139 NIC TCP segmentation offloading (Igor Kovalenko)
333   - PCNET NIC support (Antony T Curtis)
334   - Support for variable frequency host CPUs
335   - Workaround for win32 SMP hosts
336   - Support for AMD Flash memories (Jocelyn Mayer)
337   - Audio capture to WAV files support (malc)
339 version 0.8.1:
341   - USB tablet support (Brad Campbell, Anthony Liguori)
342   - win32 host serial support (Kazu)
343   - PC speaker support (Joachim Henke)
344   - IDE LBA48 support (Jens Axboe)
345   - SSE3 support
346   - Solaris port (Juergen Keil)
347   - Preliminary SH4 target (Samuel Tardieu)
348   - VNC server (Anthony Liguori)
349   - slirp fixes (Ed Swierk et al.)
350   - USB fixes
351   - ARM Versatile Platform Baseboard emulation (Paul Brook)
353 version 0.8.0:
355   - ARM system emulation: Arm Integrator/CP board with an arm1026ej-s
356     cpu (Paul Brook)
357   - SMP support
358   - Mac OS X cocoa improvements (Mike Kronenberg)
359   - Mac OS X CoreAudio driver (Mike Kronenberg)
360   - DirectSound driver (malc)
361   - ALSA audio driver (malc)
362   - new audio options: '-soundhw' and '-audio-help' (malc)
363   - ES1370 PCI audio device (malc)
364   - Initial USB support
365   - Linux host serial port access
366   - Linux host low level parallel port access
367   - New network emulation code supporting VLANs.
368   - MIPS and MIPSel User Linux emulation
369   - MIPS fixes to boot Linux (Daniel Jacobowitz)
370   - NX bit support
371   - Initial SPARC SMP support (Blue Swirl)
372   - Major overhaul of the virtual FAT driver for read/write support
373     (Johannes Schindelin)
375 version 0.7.2:
377   - x86_64 fixes (Win2000 and Linux 2.6 boot in 32 bit)
378   - merge self modifying code handling in dirty ram page mecanism.
379   - MIPS fixes (Ralf Baechle)
380   - better user net performances
382 version 0.7.1:
384   - read-only Virtual FAT support (Johannes Schindelin)
385   - Windows 2000 install disk full hack (original idea from Vladimir
386     N. Oleynik)
387   - VMDK disk image creation (Filip Navara)
388   - SPARC64 progress (Blue Swirl)
389   - initial MIPS support (Jocelyn mayer)
390   - MIPS improvements (Ralf Baechle)
391   - 64 bit fixes in user networking (initial patch by Gwenole Beauchesne)
392   - IOAPIC support (Filip Navara)
394 version 0.7.0:
396   - better BIOS translation and HDD geometry auto-detection
397   - user mode networking bug fix
398   - undocumented FPU ops support
399   - Cirrus VGA: support for 1280x1024x[8,15,16] modes
400   - 'pidfile' option
401   - .dmg disk image format support (Johannes Schindelin)
402   - keymaps support (initial patch by Johannes Schindelin)
403   - big endian ARM support (Lennert Buytenhek)
404   - added generic 64 bit target support
405   - x86_64 target support
406   - initial APIC support
407   - MMX/SSE/SSE2/PNI support
408   - PC parallel port support (Mark Jonckheere)
409   - initial SPARC64 support (Blue Swirl)
410   - SPARC target boots Linux (Blue Swirl)
411   - armv5te user mode support (Paul Brook)
412   - ARM VFP support (Paul Brook)
413   - ARM "Angel" semihosting syscalls (Paul Brook)
414   - user mode gdb stub support (Paul Brook)
415   - Samba 3 support
416   - initial Cocoa support (Pierre d'Herbemont)
417   - generic FPU emulation code
418   - Virtual PC read-only disk image support (Alex Beregszaszi)
420 version 0.6.1:
422   - Mac OS X port (Pierre d'Herbemont)
423   - Virtual console support
424   - Better monitor line edition
425   - New block device layer
426   - New 'qcow' growable disk image support with AES encryption and
427     transparent decompression
428   - VMware 3 and 4 read-only disk image support (untested)
429   - Support for up to 4 serial ports
430   - TFTP server support (Magnus Damm)
431   - Port redirection support in user mode networking
432   - Support for not executable data sections
433   - Compressed loop disk image support (Johannes Schindelin)
434   - Level triggered IRQ fix (aka NE2000 PCI performance fix) (Steve
435     Wormley)
436   - Fixed Fedora Core 2 problems (now you can run qemu without any
437     LD_ASSUME_KERNEL tricks on FC2)
438   - DHCP fix for Windows (accept DHCPREQUEST alone)
439   - SPARC system emulation (Blue Swirl)
440   - Automatic Samba configuration for host file access from Windows.
441   - '-loadvm' and '-full-screen' options
442   - ne2000 savevm support (Johannes Schindelin)
443   - Ctrl-Alt is now the default grab key. Ctrl-Alt-[0-9] switches to
444     the virtual consoles.
445   - BIOS floppy fix for NT4 (Mike Nordell, Derek Fawcus, Volker Ruppert)
446   - Floppy fixes for NT4 and NT5 (Mike Nordell)
447   - NT4 IDE fixes (Ben Pfaf, Mike Nordell)
448   - SDL Audio support and SB16 fixes (malc)
449   - ENTER instruction bug fix (initial patch by Stefan Kisdaroczi)
450   - VGA font change fix
451   - VGA read-only CRTC register fix
453 version 0.6.0:
455   - minimalist FPU exception support (NetBSD FPU probe fix)
456   - cr0.ET fix (Win95 boot)
457   - *BSD port (Markus Niemisto)
458   - I/O access fix (signaled by Mark Jonckheere)
459   - IDE drives serial number fix (Mike Nordell)
460   - int13 CDROM BIOS fix (aka Solaris x86 install CD fix)
461   - int15, ah=86 BIOS fix (aka Solaris x86 hardware probe hang up fix)
462   - BSR/BSF "undefined behaviour" fix
463   - vmdk2raw: convert VMware disk images to raw images
464   - PCI support
465   - NE2K PCI support
466   - dummy VGA PCI support
467   - VGA font selection fix (Daniel Serpell)
468   - PIC reset fix (Hidemi KAWAI)
469   - PIC spurious irq support (aka Solaris install bug)
470   - added '-localtime' option
471   - Cirrus CL-GD54xx VGA support (initial patch by Makoto Suzuki (suzu))
472   - APM and system shutdown support
473   - Fixed system reset
474   - Support for other PC BIOSes
475   - Initial PowerMac hardware emulation
476   - PowerMac/PREP OpenFirmware compatible BIOS (Jocelyn Mayer)
477   - initial IDE BMDMA support (needed for Darwin x86)
478   - Set the default memory size for PC emulation to 128 MB
480 version 0.5.5:
482   - SDL full screen support (initial patch by malc)
483   - VGA support on PowerPC PREP
484   - VBE fixes (Matthew Mastracci)
485   - PIT fixes (aka Win98 hardware probe and "VGA slowness" bug)
486   - IDE master only fixes (aka Win98 CD-ROM probe bug)
487   - ARM load/store half word fix (Ulrich Hecht)
488   - FDC fixes for Win98
490 version 0.5.4:
492   - qemu-fast fixes
493   - BIOS area protection fix (aka EMM386.EXE fix) (Mike Nordell)
494   - keyboard/mouse fix (Mike Nordell)
495   - IDE fixes (Linux did not recognized slave drivers)
496   - VM86 EIP masking fix (aka NT5 install fix) (Mike Nordell)
497   - QEMU can now boot a PowerPC Linux kernel (Jocelyn Mayer)
498   - User mode network stack
499   - imul imm8 fix + 0x82 opcode support (Hidemi KAWAI)
500   - precise self modifying code (aka BeOS install bug)
502 version 0.5.3:
504   - added Bochs VESA VBE support
505   - VGA memory map mode 3 access fix (OS/2 install fix)
506   - IDE fixes (Jens Axboe)
507   - CPU interrupt fixes
508   - fixed various TLB invalidation cases (NT install)
509   - fixed cr0.WP semantics (XP install)
510   - direct chaining support for SPARC and PowerPC (faster)
511   - ARM NWFPE support (initial patch by Ulrich Hecht)
512   - added specific x86 to x86 translator (close to native performance
513     in qemu-i386 and qemu-fast)
514   - shm syscalls support (Paul McKerras)
515   - added accurate CR0.MP/ME/TS emulation
516   - fixed DMA memory write access (Win95 boot floppy fix)
517   - graphical x86 linux loader
518   - command line monitor
519   - generic removable device support
520   - support of CD-ROM change
521   - multiple network interface support
522   - initial x86-64 host support (Gwenole Beauchesne)
523   - lret to outer priviledge fix (OS/2 install fix)
524   - task switch fixes (SkyOS boot)
525   - VM save/restore commands
526   - new timer API
527   - more precise RTC emulation (periodic timers + time updates)
528   - Win32 port (initial patch by Kazu)
530 version 0.5.2:
532   - improved soft MMU speed (assembly functions and specializing)
533   - improved multitasking speed by avoiding flushing TBs when
534     switching tasks
535   - improved qemu-fast speed
536   - improved self modifying code handling (big performance gain in
537     softmmu mode).
538   - fixed IO checking
539   - fixed CD-ROM detection (win98 install CD)
540   - fixed addseg real mode bug (GRUB boot fix)
541   - added ROM memory support (win98 boot)
542   - fixed 'call Ev' in case of paging exception
543   - updated the script 'qemu-binfmt-conf.sh' to use QEMU automagically
544     when launching executables for the supported target CPUs.
545   - PowerPC system emulation update (Jocelyn Mayer)
546   - PC floppy emulation and DMA fixes (Jocelyn Mayer)
547   - polled mode for PIC (Jocelyn Mayer)
548   - fixed PTE dirty bit handling
549   - fixed xadd same reg bug
550   - fixed cmpxchg exception safeness
551   - access to virtual memory in gdb stub
552   - task gate and NT flag fixes
553   - eflags optimisation fix for string operations
555 version 0.5.1:
557   - float access fixes when using soft mmu
558   - PC emulation support on PowerPC
559   - A20 support
560   - IDE CD-ROM emulation
561   - ARM fixes (Ulrich Hecht)
562   - SB16 emulation (malc)
563   - IRET and INT fixes in VM86 mode with IOPL=3
564   - Port I/Os use TSS io map
565   - Full task switching/task gate support
566   - added verr, verw, arpl, fcmovxx
567   - PowerPC target support (Jocelyn Mayer)
568   - Major SPARC target fixes (dynamically linked programs begin to work)
570 version 0.5.0:
572   - full hardware level VGA emulation
573   - graphical display with SDL
574   - added PS/2 mouse and keyboard emulation
575   - popw (%esp) fix
576   - mov to/from segment data width fix
577   - added real mode support
578   - added Bochs BIOS and LGPL'ed VGA BIOS loader in qemu
579   - m68k host port (Richard Zidlicky)
580   - partial soft MMU support for memory mapped I/Os
581   - multi-target build
582   - fixed: no error code in hardware interrupts
583   - fixed: pop ss, mov ss, x and sti disable hardware irqs for the next insn
584   - correct single stepping thru string operations
585   - preliminary SPARC target support (Thomas M. Ogrisegg)
586   - tun-fd option (Rusty Russell)
587   - automatic IDE geometry detection
588   - renamed 'vl' to qemu[-fast] and user qemu to qemu-{cpu}.
589   - added man page
590   - added full soft mmu mode to launch unpatched OSes.
592 version 0.4.3:
594   - x86 exception fix in case of nop instruction.
595   - gcc 3.2.2 bug workaround (RedHat 9 fix)
596   - sparc and Alpha host fixes
597   - many ARM target fixes: 'ls' and 'bash' can be launched.
599 version 0.4.2:
601  - many exception handling fixes (can compile a Linux kernel inside vl)
602  - IDE emulation support
603  - initial GDB stub support
604  - deferred update support for disk images (Rusty Russell)
605  - accept User Mode Linux Copy On Write disk images
606  - SMP kernels can at least be booted
608 version 0.4.1:
610  - more accurate timer support in vl.
611  - more reliable NE2000 probe in vl.
612  - added 2.5.66 kernel in vl-test.
613  - added VLTMPDIR environment variable in vl.
615 version 0.4:
617  - initial support for ring 0 x86 processor emulation
618  - fixed signal handling for correct dosemu DPMI emulation
619  - fast x86 MMU emulation with mmap()
620  - fixed popl (%esp) case
621  - Linux kernel can be executed by QEMU with the 'vl' command.
623 version 0.3:
625  - initial support for ARM emulation
626  - added fnsave, frstor, fnstenv, fldenv FPU instructions
627  - added FPU register save in signal emulation
628  - initial ARM port
629  - Sparc and Alpha ports work on the regression test
630  - generic ioctl number conversion
631  - fixed ioctl type conversion
633 version 0.2:
635  - PowerPC disassembly and ELF symbols output (Rusty Russell)
636  - flock support (Rusty Russell)
637  - ugetrlimit support (Rusty Russell)
638  - fstat64 fix (Rusty Russell)
639  - initial Alpha port (Falk Hueffner)
640  - initial IA64 port (Matt Wilson)
641  - initial Sparc and Sparc64 port (David S. Miller)
642  - added HLT instruction
643  - LRET instruction fix.
644  - added GPF generation for I/Os.
645  - added INT3 and TF flag support.
646  - SHL instruction C flag fix.
647  - mmap emulation for host page size > 4KB
648  - self-modifying code support
649  - better VM86 support (dosemu works on non trivial programs)
650  - precise exception support (EIP is computed correctly in most cases)
651  - more precise LDT/GDT/IDT emulation
652  - faster segment load in vm86 mode
653  - direct chaining of basic blocks (faster emulation)
655 version 0.1.6:
657  - automatic library search system. QEMU can now work with unpatched
658    ELF dynamic loader and libc (Rusty Russell).
659  - ISO C warning fixes (Alistair Strachan)
660  - first self-virtualizable version (works only as long as the
661    translation cache is not flushed)
662  - RH9 fixes
664 version 0.1.5:
666  - ppc64 support + personality() patch (Rusty Russell)
667  - first Alpha CPU patches (Falk Hueffner)
668  - removed bfd.h dependancy
669  - fixed shrd, shld, idivl and divl on PowerPC.
670  - fixed buggy glibc PowerPC rint() function (test-i386 passes now on PowerPC).
672 version 0.1.4:
674  - more accurate VM86 emulation (can launch small DOS 16 bit
675    executables in wine).
676  - fixed push/pop fs/gs
677  - added iret instruction.
678  - added times() syscall and SIOCATMARK ioctl.
680 version 0.1.3:
682  - S390 support (Ulrich Weigand)
683  - glibc 2.3.x compile fix (Ulrich Weigand)
684  - socketcall endian fix (Ulrich Weigand)
685  - struct sockaddr endian fix (Ulrich Weigand)
686  - sendmsg/recvmsg endian fix (Ulrich Weigand)
687  - execve endian fix (Ulrich Weigand)
688  - fdset endian fix (Ulrich Weigand)
689  - partial setsockopt syscall support (Ulrich Weigand)
690  - more accurate pushf/popf emulation
691  - first partial vm86() syscall support (can be used with runcom example).
692  - added bound, cmpxchg8b, cpuid instructions
693  - added 16 bit addressing support/override for string operations
694  - poll() fix
696 version 0.1.2:
698  - compile fixes
699  - xlat instruction
700  - xchg instruction memory lock
701  - added simple vm86 example (not working with QEMU yet). The 54 byte
702    DOS executable 'pi_10.com' program was released by Bertram
703    Felgenhauer (more information at http://www.boo.net/~jasonp/pipage.html).
705 version 0.1.1:
707  - glibc 2.2 compilation fixes
708  - added -s and -L options
709  - binary distribution of x86 glibc and wine
710  - big endian fixes in ELF loader and getdents.
712 version 0.1:
714  - initial public release.