* New features are not tested yet, for example SPICE protocol support.
* I have tested on NetBSD/i386 5.99.54 and DragonFly/i386 2.10.1 as host,
NetBSD/{amd64, i386, sparc} as guest.
Changelog:
0.14.1
virtio-blk: fail unaligned requests
qed: Fix consistency check on 32-bit hosts
exit if -drive specified is invalid instead of ignoring the "wrong" -drive
vhost: fix dirty page handling
Do not delete BlockDriverState when deleting the drive
vnc: tight: Fix crash after 2GB of output
lan9118: Ignore write to MAC_VLAN1 register
Don't allow multiwrites against a block device without lsi53c895a: add support for ABORT messages
virtio-pci: fix bus master work around on load
fix applesmc REV key
rbd: don't link with -lcrypto
net: Add the missing option declaration of "vhostforce"
lsi53c895a: Update dnad when skipping MSGOUT bytes
Revert "prep: Disable second IDE channel, as long as ISA IDE emulation doesn't support same irq for both channels"
isa-bus: Remove bogus IRQ sharing check
virtio-net: Fix lduw_p() pointer argument of wrong size
hw/sd.c: Add missing state change for SD_STATUS, SEND_NUM_WR_BLOCKS
vnc: Fix fatal crash with vnc reverse mode
qemu-char: Check for missing backend name
0.14.0
Targets
ARM
Most of the changes are related to bug fixes and improvements to match what the real hardware does. For now there is no new board or CPU.
MIPS
Host CPU consumption for idle guests
Timer fixes
FPU improvements
SH4
Various bug fixes and improvements including
SM501 2D engine copyrect support, needed to boot recent kernels
MMU mmaped TLB access, needed to boot recent kernels
Floating point exceptions and correct NaN support.
PPC
Fix running recent PPC64 kernels
New maintainer: Alexander Graf
Improve interrupt injection with KVM
Enable PV enabled guests for speedup with KVM
Floating point fixes
Add a ppc-440x5 Xilinx model
Add a virtex5 ml507 refdesign board for ppc-440x5
BookE MMU emulation improvements
s390x
No news, business as usual.
SPARC
Fix div(cc) and sdiv(cc) instruction emulation, fixes Xorg crash in the guest
Hosts
ARM
Fix random crashes
Fix 64-bit big-endian targets support
MIPS
Fix random crashes
IA64
Fix random crashes for 32-bit targets
Devices
IDE / AHCI
Added emulation layer for an ICH-9 AHCI controller (not yet stable). Tested with Linux, OpenBSD, Windows Vista and Windows 7. The AHCI emulation supports NCQ, so multiple read or write requests can be outstanding at the same time.
to use it, use the following command line snippet: -drive id=disk,file=<your image goes here>,if=none -device ahci,id=ahci -device ide-drive,drive=disk,bus=ahci.0
SCSI
Various bug fixes, no new features.
USB
Added USB support for remote wakeup, allowing the guest to suspend the USB bus when idle, which in turn reduces the CPU overhead of an idle machine.
The USB subsystem also got a bunch of patches to prepare it for USB 2.0 support.
virtio
virtio-pci can use ioeventfd for virtqueue notify. On systems that support KVM, the ioeventfd mechanism can be used to make virtqueue notify a lightweight exit by deferring hardware emulation to the iothread and allowing the VM to continue execution. This model is similar to how vhost receives virtqueue notifies. The result of this change is improved performance for userspace virtio devices. Virtio-blk throughput increases especially for multithreaded scenarios and virtio-net transmit throughput increases substantially. Read the commit message for more details.
Various fixes and stabilization for live-migration:
Various virtio-net improvements:
Make tx_timer timeout configurable
Limit number of packets sent per TX flush
Introduce a new bottom half packet TX
Fix cross-endianness support
PCI/PCI Express
Improved PCI Express support and functionalities with the implementation of:
flr (Function Level Reset)
aer (Advanced Error Reporting) and other improvements
A new monitor command to inject errors into the PCI bus: pcie_aer_inject_error
Implementation of Message Signaled Interrupts (MSI/MSI-X) support
Separation of the PCI bridge code from the main PCI code.
Sound
New Intel HD Audio support, adding three new devices:
intel-hda: Intel HD Audio Controller, the PCI device.
hda-duplex: HDA Codec. Attaches to the HDA bus. Supports 16bit stereo, rates 16k -> 96k, playback, recording and volume control (with CONFIG_MIXEMU=y).
hda-output: HDA Codec without recording support. Subset of the hda-duplex codec. Use this if you don't want your guests access your mic.
Usage: add '-device intel-hda -device hda-duplex' to your command line.
Tested guests:
Linux works.
Win7 works.
DOS (mpxplay) works.
WinXP doesn't work.
Real Time Clock
Fix binary/BCD mode switch
Video
Fix cirrus VGA crash with some guests
Fix curses big endian support
Block Drivers
qcow2
Added a writeback metadata cache. This improves performance of scenarios with lots of cluster allocations noticably (e.g. installation or after taking a snapshot), in some benchmarks by a factor of ten or more. Use cache=none or cache=writeback to take advantage from this change.
Copy snapshots out of QCOW2 disk, eg: qemu-img convert -f qcow2 -O qcow2 -s snapshot_name src_img bck_img
Zero-copy read and write operations
Other fixes and code cleanups:
qcow2: Invalidate cache after failed read
block: Allow bdrv_flush to return errors
qcow2: Simplify image creation
qcow2: Fixes unaligned access on IA64
qed
Introduction of the QEMU Enhanced Disk (qed) image format. It is a disk image format that forgoes features found in qcow2 in favor of better levels of performance and data integrity. Due to its simpler on-disk layout, it is possible to safely perform metadata updates more efficiently.
More information about qed: http://wiki.qemu.org/Features/QED
Initial thread discussion: http://lists.nongnu.org/archive/html/qemu-devel/2010-09/msg00310.html
ceph/rbd
Introduction of the new ceph/rbd block driver. RBD is an block driver for the distributed file system Ceph.
More information about ceph: http://ceph.newdream.net/
nbd
Improve qemu-nbd performance by 4400 %. This patch combines the reply header and payload send operation.
Introduce NBD named exports.
Spice
New support for the SPICE protocol. The project main focus is to provide high-quality remote access to QEMU virtual machines. More information about SPICE can be found at the project's web site: http://spice-space.org/
New qxl device. qxl is a paravirtual graphics card. The qxl device is the bridge between the guest and the spice server (aka libspice-server). The spice server will send the rendering commands to the spice client, which will actually render them. The spice server is also able to render locally, which is done in case the guest wants read something from video memory. Local rendering is also used to support display over vnc and sdl. qxl is activated using -vga qxl. qxl supports multihead, additional cards can be added via '-device qxl.
Relevant commits:
spice: core bits
spice: add keyboard
spice: add mouse
spice: simple display
spice: add tablet support
spice: tls support
spice: make compression configurable.
spice: add config options for channel security.
spice: add config options for the listening address
spice: add misc config options
spice: add audio
spice: add qxl device
spice: connection events.
QMP / monitor
TODO: QMP is now stable, except for error reporting?
The work to facilitate the management of QEMU instances has been improved. QMP has received various fixes. Now it is possible to call a traditional monitor command through QMP, in case your application depends on the output or the command is not yet ported to QMP.
New commands:
query-spice / info spice
human-monitor-command
set_password
drive_del
block_resize command, allowing resizing of block devices while qemu is running. For virtio-blk the size is updated automatically when this command is issued on the host. IDE is not supported. For SCSI devices the new size can be updated in Linux guests by doing the following shell command:
echo > /sys/class/scsi_device/0:0:0:0/device/rescan
Tracing
Introduction of platform-independent tracing, more information about it: http://wiki.qemu.org/Features/Tracing
Documentation and tutorial: http://git.qemu.org/qemu.git/plain/docs/tracing.txt
Some relevant commits:
Add trace-events file for declaring trace events
Add a DTrace tracing backend targetted for SystemTAP compatibility
Add LTTng Userspace Tracer backend
Add simple built-in tracing backend
Add stderr trace-event backend:
Support for dynamically enabling/disabling trace events
Specify trace file name
Add trace-file command to open/close/flush trace file
Other stuff
Extend -option-rom command to have additional parameter bootindex
Little endian / big endian MMIO framework. Until now, most devices had special hacks to allow them to work on big and little endian systems (ppc / x86). With that framework, they should mostly work with both and not require and device specific hacks anymore.
"Looks good" from wiz@ and obache@.
ChangeLog for 0.13.0 is not updated but there is a list in announcement:
This release consists of over 2,500 commits from 145 contributors.
Some major features were added in this release including:
- vhost-net: kernel-accelerating network backend for virtio devices (using KVM)
- qmp: significant improvements covering most monitor commands
- vnc: introduction of new encodings that dramatically improve bandwidth
(part of GSoC project)
- ivshmem: new shared memory device allowing multiple guests to share
a memory region
- mips: introduction of fulong mini-pc
- virtio-9p: introduction of a paravirtual file system passthrough mechanism
- hpet: many enhancements
- target-s390: support for s390 usermode emulation
- many more features and bug fixes
A special note about QMP support in 0.13.0. QMP is still considered
experimental in 0.13.0. There are no plans to change the protocol
in an incompatible way but there are likely to be missing features.
ChangeLog for version 0.12.5:
- audio/alsa: Handle SND_PCM_STATE_SETUP in alsa_poll_handler
- block: Handle multiwrite errors only when all requests have completed
- block: Fix early failure in multiwrite
- vpc: Use bdrv_(p)write_sync for metadata writes
- vmdk: Use bdrv_(p)write_sync for metadata writes
- qcow2: Use bdrv_(p)write_sync for metadata writes
- qcow: Use bdrv_(p)write_sync for metadata writes
- block: Add bdrv_(p)write_sync
- qcow2: Restore L1 entry on l2_allocate failure
- block/vdi: Fix image opening and creation for odd disk sizes
- block/vpc: Fix conversion from size to disk geometry
- qcow2: Remove abort on free_clusters failure
- vmdk: Fix COW
- qcow2: Fix creation of large images
- vmdk: fix double free
- qemu-options: add documentation for stdio signal=on|off
- target-arm : fix parallel saturated subtraction implementation
- target-arm : fix thumb2 parallel add/sub opcode decoding
- target-arm: fix addsub/subadd implementation
- target-i386: fix xchg rax,r8
- block/vvfat.c: fix warnings with _FORTIFY_SOURCE
- audio/alsa: Spelling typo (paramters)
- target-mips: fix DINSU instruction
- Correct definitions for FD_CMD_SAVE and FD_CMD_RESTORE
- qcow2: Fix corruption after error in update_refcount
- qcow2: Fix corruption after refblock allocation
- block: Fix multiwrite with overlapping requests
- qcow2: Fix error handling in l2_allocate
- qcow2: Clear L2 table cache after write error
- ide: Fix ide_dma_cancel
- usb-bus: fix no params
- Avoid crash on '-usbdevice <device>' without parameters
- Fix -usbdevice crash
- Fix multiboot compilation
- Fix missing symbols in .rel/.rela.plt sections
- target-ppc: fix RFI by clearing some bits of MSR
- Fix typo in balloon help
- arm_timer: fix oneshot mode
- arm_timer: reload timer when enabled
- qemu-sockets: avoid strlen of NULL pointer
- block: fix aio_flush segfaults for read-only protocols (e.g. curl)
- virtio-blk: fix barrier support
- block: fix sector comparism in multiwrite_req_compare
- pci: irq_state vmstate breakage
- qemu-img: use the heap instead of the huge stack array for win32
Pkgsrc changes:
patch-aa
patch-ao
patch-ba
patch-de
patch-ed
- lifted from previous (some adjustments per upstream changes)
patch-ab
- removed (looks similar fix applied in upstream)
patch-dd
- adjust configure for location of man page dir (as previous)
- fix detection for arm hosts
patch-dk
- removed (looks no longer applicable due to reorganized upstream)
patch-ee
- remove old e1000.c fix (pulled up to upstream)
- pull block/sheepdog.c build fix on *BSD hosts from upstream
patch-ef
patch-eg
patch-eh
patch-ei
- workaround for conflicts with SSP read() macro in NetBSD's <ssp/unistd.h>
(PR lib/43832: ssp causes common names to be defines)
patch-ej
- pull build/warning fixes in ui/vnc-enc-tight.c from upstream
patch-ek
- pull ATA PIO fix (by jakllsch@) from upstream
- pull warning fix from upstream
patch-el
- workaround for missing C99 FP macro on netbsd-4
(PR pkg/42899, but od(1) fixes for netbsd-4 not included)
patch-em
patch-en
- build fix on NetBSD/arm host using gcc-4.1.3
(built qemu binary on NetBSD/hpcarm host fails though)
patch-eo
patch-ep
patch-er
patch-es
- pull ESP SCSI DMA fixes (that might affect sparc) from upstream
patch-eq
- pull ESP SCSI DMA fixes from upstream
- disable broken ARC JAZZ floppy that causes hang on MIPS NT 4.0 guest
Makefile
- bump DISTNAME
- add makeinfo to USE_TOOLS
XXX: gets "qemu-doc.texi:7: warning: unrecognized encoding name `UTF-8'."
- adjust SUBST_FILES.qaudio per upstream changes
- enable nbd support *BSD per upstream update
PLIST
distinfo
- update per each file
---
version 0.12.4:
- Workaround for broken OSS_GETVERSION on FreeBSD, part two (Juergen Lock)
- oss: fix fragment setting (malc)
- oss: issue OSS_GETVERSION ioctl only when needed (malc)
- oss: refactor code around policy setting (malc)
- oss: workaround for cases when OSS_GETVERSION is not defined (malc)
- block: Free iovec arrays allocated by multiwrite_merge() (Stefan Hajnoczi)
- lsi: fix segfault in lsi_command_complete (Gerd Hoffmann)
- lsi: pass lsi_request to lsi_reselect (Gerd Hoffmann)
- lsi: move dma_len+dma_buf into lsi_request (Gerd Hoffmann)
- lsi: move current_dev into lsi_request (Gerd Hoffmann)
- lsi: have lsi_request for the whole life time of the request. (Gerd Hoffmann)
- lsi: use QTAILQ for lsi_queue (Gerd Hoffmann)
- tcp/mips: Change TCG_AREG0 (fp -> s0) (Stefan Weil)
- sh_pci: fix memory and I/O access (Aurelien Jarno)
- Fix incoming migration with iothread (Marcelo Tosatti)
- Fix SIGFPE for vnc display of width/height = 1 (Chris Webb)
- net: remove broken net_set_boot_mask() boot device validation (Eduardo Habkost)
- qcow2: Remove request from in-flight list after error (Kevin Wolf)
- qcow2: Don't ignore immediate read/write failures (Kevin Wolf)
- block: Fix multiwrite memory leak in error case (Kevin Wolf)
- block: Fix error code in multiwrite for immediate failures (Kevin Wolf)
- block: Fix multiwrite error handling (Kevin Wolf)
- scsi-disk: fix buffer overflow (Gerd Hoffmann)
- qcow2: Rewrite alloc_refcount_block/grow_refcount_table (Kevin Wolf)
- qcow2: Factor next_refcount_table_size out (Kevin Wolf)
- block: avoid creating too large iovecs in multiwrite_merge (Christoph Hellwig)
- json-parser: Fix segfault on malformed input (Kevin Wolf)
- linux-user: switch default ppc64 CPU to 970fx from 970 (Aurelien Jarno)
- target-sh4: MMU: fix store queue addresses (Aurelien Jarno)
- target-sh4: MMU: fix ITLB priviledge check (Aurelien Jarno)
- target-sh4: MMU: fix mem_idx computation (Aurelien Jarno)
- sh7750: handle MMUCR TI bit (Aurelien Jarno)
- UHCI spurious interrut fix (Paul Brook)
- tcg/mips: fix branch offset during retranslation (Aurelien Jarno)
- tcg/arm: correctly save/restore registers in prologue/epilogue (Aurelien Jarno)
- workaround for cmd646 bmdma register access while no dma is active (Igor V. Kovalenko)
- Fix corner case in chardev udp: parameter (Jan Kiszka)
- Don't set default monitor when there is a mux'ed one (Jan Kiszka)
- spelling typo (compatibilty) in hw/fw_cfg.c (Vagrant Cascadian)
- fdc: fix drive property handling. (Gerd Hoffmann)
- target-i386: fix commit c22549204a6edc431e8e4358e61bd56386ff6957 (TeLeMan)
- target-i386: fix SIB decoding with index = 4 (Aurelien Jarno)
- Fix segfault with ram_size > 4095M without kvm (Ryan Harper)
- target-i386: Fix long jumps/calls in long mode with REX.W set (malc)
- target-i386: fix lddqu SSE instruction (Aurelien Jarno)
- qemu-char.c: drop debug printfs from qemu_chr_parse_compat (Jan Kiszka)
- fix undefined shifts by >32 (Paolo Bonzini)
- Fix qemu -net user,hostfwd= example (Aurelien Jarno)
---
Also add a patch for e1000.c NIC to make wm(4) work on NetBSD guest:
---
* Reset EEPROM internal state on CS rise edge,
not SK rise edge during CS is low, per CS pin description in
the FM93C06 EEPROM manual:
"... a rising edge on this signal is required to reset the
internal state-machine to accept a new cycle ..."
Intel's em driver seems to explicitly raise and lower SK output
after CS is negated in em_standby_eeprom() so many other OSes
that use Intel's driver don't have this problem, but I can't find
articles that say the MICROWIRE or EEPROM spec requires such sequence.
* It isn't a good idea to use memset(,0,) to clear EEPROM state values,
so explicitly clear status members and preserve the previous EECD values
---
This patch is also filed as upstream QEMU bugs #581737.
While here, several tweaks in Makefile to appease pkglint.
tap backend work on NetBSD (NetBSD uses an ioctl to get the tap name).
patch-ab: add support for the "select without ATN" to the emulated
esp device. NetBSD's esp(4) uses this command and aborts after a timeout.
While there fix the homepage URL.
Now NetBSD/sparc 5.0.1 boots and runs fine in qemu-system-sparc on a
NetBSD/amd64 host.
Bump pkgrevision.
Unknown why it was using this.
This closes PR 39571 and PR 37786.
Another suggestion is to use pkgsrc's MACHINE_ARCH.
(Not completely tested on DragonFly as this still doesn't build
due to wrong gcc.)
Also note this release is not the latest.
Emulate the speaker port's refresh clock bit. This is supposed
to toggle between 0 and 1<<4 every 15 microseconds. XXX: We use
gettimeofday() in the real machine instead of a monotonic clock
in the virtual machine, and we are a bit sloppy about the 15
microseconds. This should be good enough for crude loops that
measure approximate delays by counting how often this line toggles.
Bump PKGREVISION to 1
patch to let this build on systems without POSIX AIO.
version 0.9.0:
- Support for relative paths in backing files for disk images
- Async file I/O API
- New qcow2 disk image format
- Support of multiple VM snapshots
- Linux: specific host CDROM and floppy support
- SMM support
- Moved PCI init, MP table init and ACPI table init to Bochs BIOS
- Support for MIPS32 Release 2 instruction set (Thiemo Seufer)
- MIPS Malta system emulation (Aurelien Jarno, Stefan Weil)
- Darwin userspace emulation (Pierre d'Herbemont)
- m68k user support (Paul Brook)
- several x86 and x86_64 emulation fixes
- Mouse relative offset VNC extension (Anthony Liguori)
- PXE boot support (Anthony Liguori)
- '-daemonize' option (Anthony Liguori)
- ACPI support
- PC VGA BIOS fixes
- switch to OpenBios for SPARC targets (Blue Swirl)
- VNC server fixes
- MIPS FPU support (Marius Groeger)
- Solaris/SPARC host support (Ben Taylor)
- PPC breakpoints and single stepping (Jason Wessel)
- USB updates (Paul Brook)
- UDP/TCP/telnet character devices (Jason Wessel)
- Windows sparse file support (Frediano Ziglio)
- RTL8139 NIC TCP segmentation offloading (Igor Kovalenko)
- PCNET NIC support (Antony T Curtis)
- Support for variable frequency host CPUs
- Workaround for win32 SMP hosts
- Support for AMD Flash memories (Jocelyn Mayer)
- Audio capture to WAV files support (malc)
pkgsrc changes:
On systems with gcc4, force to use pkgsrc gcc34 to make it build
on NetBSD >=4.0.
Changes:
- USB tablet support (Brad Campbell, Anthony Liguori)
- win32 host serial support (Kazu)
- PC speaker support (Joachim Henke)
- IDE LBA48 support (Jens Axboe)
- SSE3 support
- Solaris port (Ben Taylor)
- Preliminary SH4 target (Samuel Tardieu)
- VNC server (Anthony Liguori)
- slirp fixes (Ed Swierk et al.)
- USB fixes
- ARM Versatile Platform Baseboard emulation (Paul Brook)
* Support for ARM Integrator/CP board system emulation.
* Support for MIPS R4K system emulation.
* Initial SMP support on x86 (up to 255 CPUs !).
* Many new audio emulation features.
* Initial USB support.
* New networking options for VLAN support between several QEMU instances.
aalib-x11 and aview-x11.
SDL dependencies change, so bump PKGREVISION (and BUILDLINK_RECOMMENDED)
for affected packages.
Addresses PR 32046 by Leonard Schmidt.
Changes:
- read-only Virtual FAT support (Johannes Schindelin)
- Windows 2000 install disk full hack (original idea from Vladimir
N. Oleynik)
- VMDK disk image creation (Filip Navara)
- SPARC64 progress (Blue Swirl)
- initial MIPS support (Jocelyn mayer)
- MIPS improvements (Ralf Baechle)
- 64 bit fixes in user networking (initial patch by Gwenole Beauchesne)
- IOAPIC support (Filip Navara)
Several changes are involved since they are all interrelated. These
changes affect about 1000 files.
The first major change is rewriting bsd.builtin.mk as well as all of
the builtin.mk files to follow the new example in bsd.builtin.mk.
The loop to include all of the builtin.mk files needed by the package
is moved from bsd.builtin.mk and into bsd.buildlink3.mk. bsd.builtin.mk
is now included by each of the individual builtin.mk files and provides
some common logic for all of the builtin.mk files. Currently, this
includes the computation for whether the native or pkgsrc version of
the package is preferred. This causes USE_BUILTIN.* to be correctly
set when one builtin.mk file includes another.
The second major change is teach the builtin.mk files to consider
files under ${LOCALBASE} to be from pkgsrc-controlled packages. Most
of the builtin.mk files test for the presence of built-in software by
checking for the existence of certain files, e.g. <pthread.h>, and we
now assume that if that file is under ${LOCALBASE}, then it must be
from pkgsrc. This modification is a nod toward LOCALBASE=/usr. The
exceptions to this new check are the X11 distribution packages, which
are handled specially as noted below.
The third major change is providing builtin.mk and version.mk files
for each of the X11 distribution packages in pkgsrc. The builtin.mk
file can detect whether the native X11 distribution is the same as
the one provided by pkgsrc, and the version.mk file computes the
version of the X11 distribution package, whether it's built-in or not.
The fourth major change is that the buildlink3.mk files for X11 packages
that install parts which are part of X11 distribution packages, e.g.
Xpm, Xcursor, etc., now use imake to query the X11 distribution for
whether the software is already provided by the X11 distribution.
This is more accurate than grepping for a symbol name in the imake
config files. Using imake required sprinkling various builtin-imake.mk
helper files into pkgsrc directories. These files are used as input
to imake since imake can't use stdin for that purpose.
The fifth major change is in how packages note that they use X11.
Instead of setting USE_X11, package Makefiles should now include
x11.buildlink3.mk instead. This causes the X11 package buildlink3
and builtin logic to be executed at the correct place for buildlink3.mk
and builtin.mk files that previously set USE_X11, and fixes packages
that relied on buildlink3.mk files to implicitly note that X11 is
needed. Package buildlink3.mk should also include x11.buildlink3.mk
when linking against the package libraries requires also linking
against the X11 libraries. Where it was obvious, redundant inclusions
of x11.buildlink3.mk have been removed.
Changes:
- better BIOS translation and HDD geometry auto-detection
- user mode networking bug fix
- undocumented FPU ops support
- Cirrus VGA: support for 1280x1024x[8,15,16] modes
- 'pidfile' option
- .dmg disk image format support (Johannes Schindelin)
- keymaps support (initial patch by Johannes Schindelin)
- big endian ARM support (Lennert Buytenhek)
- added generic 64 bit target support
- x86_64 target support
- initial APIC support
- MMX/SSE/SSE2/PNI support
- PC parallel port support (Mark Jonckheere)
- initial SPARC64 support (Blue Swirl)
- SPARC target boots Linux (Blue Swirl)
- armv5te user mode support (Paul Brook)
- ARM VFP support (Paul Brook)
- ARM "Angel" semihosting syscalls (Paul Brook)
- user mode gdb stub support (Paul Brook)
- Samba 3 support
- initial Cocoa support (Pierre d'Herbemont)
- generic FPU emulation code
- Virtual PC read-only disk image support (Alex Beregszaszi)
pkgsrc changes:
Applied Hubert Feyrer workaround for the x86_64 target (patch-aw).
Changes:
- Mac OS X port (Pierre d'Herbemont)
- Virtual console support
- Better monitor line edition
- New block device layer
- New 'qcow' growable disk image support with AES encryption and
transparent decompression
- VMware 3 and 4 read-only disk image support (untested)
- Support for up to 4 serial ports
- TFTP server support (Magnus Damm)
- Port redirection support in user mode networking
- Support for not executable data sections
- Compressed loop disk image support (Johannes Schindelin)
- Level triggered IRQ fix (aka NE2000 PCI performance fix) (Steve
Wormley)
- Fixed Fedora Core 2 problems (now you can run qemu without any
LD_ASSUME_KERNEL tricks on FC2)
- DHCP fix for Windows (accept DHCPREQUEST alone)
- SPARC system emulation (Blue Swirl)
- Automatic Samba configuration for host file access from Windows.
- '-loadvm' and '-full-screen' options
- ne2000 savevm support (Johannes Schindelin)
- Ctrl-Alt is now the default grab key. Ctrl-Alt-[0-9] switches to
the virtual consoles.
- BIOS floppy fix for NT4 (Mike Nordell, Derek Fawcus, Volker Ruppert)
- Floppy fixes for NT4 and NT5 (Mike Nordell)
- NT4 IDE fixes (Ben Pfaf, Mike Nordell)
- SDL Audio support and SB16 fixes (malc)
- ENTER instruction bug fix (initial patch by Stefan Kisdaroczi)
- VGA font change fix
- VGA read-only CRTC register fix
Holland.
QEMU is a FAST! processor emulator using dynamic translation to achieve
good emulation speed, QEMU has two operating modes:
* Full system emulation. In this mode, QEMU emulates a full system
(for example a PC), including a processor and various peripherals.
It can be used to launch different Operating Systems without rebooting
the PC or to debug system code.
* User mode emulation (Linux host only). In this mode, QEMU can launch
Linux processes compiled for one CPU on another CPU. It can be used
to launch the Wine Windows API emulator or to ease cross-compilation
and cross-debugging.
--
It's nice to see NetBSD/x86 running perfectly with QEMU!