Commit graph

223 commits

Author SHA1 Message Date
ryoon
5c4402721c Update to 2.2.0
Changelog:
# System emulation
## Future incompatible changes
* Three options are using different names on the command line and in configuration file. In particular:
** The "acpi" configuration file section matches command-line option "acpitable";
** The "boot-opts" configuration file section matches command-line option "boot";
** The "smp-opts" configuration file section matches command-line option "smp".

Starting with QEMU xyz.jkl, -readconfig will standardize on the name for the command line option.

## ARM
* Support for loading a device tree even with no -kernel option or when booting ELF images
* Support for input interrupts in the PL061 GPIO controller
* TCG can emulate breakpoints and watchpoints.
* Support for PSCI firmware interface emulating in TCG
** enables clean shutdown from non-kvm guests

## MIPS
* Support for MIPS64 Release 6 emulation.
* Support for MIPS SIMD Architecture emulation.
* Fix for incorrectly handled delay slots in MIPS16 and microMIPS.

## PowerPC
* Mac OS X 10.2, 10.3 and 10.4 guests run with the mac99 machine type.
* Bugfixes and optimization for TCG emulation of PowerPC targets.

### IBM (pSeries)
* Support for the "nmi" monitor command, to enter the kernel debugger.
* Live migration support for NVRAM

### Freescale (BookE)
* Breakpoint support on KVM.
* Support for the e500 platform bus and dynamic instantiation of FreeScale eTSEC devices (-device eTSEC).
* Support for MPC8XXX gpio controller to enable shutdown with 3.19+ Linux guests
## s390
* Enhance support for boot from DASD to handle more formats.
* Support for memory hotplug.
* Support for cpu state handling and migration.
* Support for booting newer kernels under TCG.
* Improved SMP startup and cpu online/offline performance especially for large guests

## SPARC
* Emulation of TCX hardware acceleration (allows X to run under NetBSD and Solaris)
* NetBSD and OpenBSD can now run under qemu-system-sparc64 in -nographic mode

## TriCore
* New target.

## x86
* Support for IOMMU (VT-d) emulation on the Q35 machine type, enabled with "-machine iommu=on".
* Support for specifying drives in short form on the command-line (i.e. using -cdrom, -hda, -drive if=ide) on the Q35 machine type.
* TCG is reported to run QNX.
* All CPUs now work with "-cpu MODEL,enforce", of course as long as TCG or KVM support the CPU's set of features. Previously, a few CPUs included extraneous CPUID flags that cause "-cpu MODEL,enforce" to fail.

## KVM
* More robust live migration of the kvm pv clock
* Support for AVX512

## Xen
* QEMU can now boot a bzImage or multiboot kernel under Xen, using the command line option -kernel.

## Xtensa
* New script for automatic core import from xtensa configuration overlay.

## Device emulation and assignment
* The boot order set for hot-plugged devices will take effect during reboot. In addition, the boot order can be dynamically modified via QOM.

### IDE
* More accurate emulation of AHCI, especially visible with Windows guests.

### SCSI
* Passthrough of vendor-specific commands now works (only with the virtio-scsi HBA).
* Initial support in virtio-scsi for a threaded backend, which is used in the same way as virtio-blk ("-object iothread,id=id" and "-device virtio-scsi-pci,iothread=id"). Note that the code has known thread-safety problems that can lead to QEMU using freed memory. They should not happen in normal use, they can be triggered easily by malicious guests. This option should only be used if you are interested in making relevant parts of QEMU thread safe.
* Support for LSI MegaRAID SAS 2108 HBAs (-device megasas-gen2). Note that booting from this device does not work yet.
* virtio-scsi can now execute Abort Task and Abort Task Set task management functions asynchronously.

### PCI/PCIe
* MSIs are now (correctly) disabled until bus master DMA is enabled for the device.
* Support for ARI forwarding on PCIe root ports.

### USB
* Support for hot-plugging XHCI/EHCI/UHCI controllers (in the case of EHCI/UHCI, only if there are no companion controllers).
* Support for USB 2.0 (high speed) mice and keyboards, complementing the existing support for high speed USB tablets. High speed devices avoid the less efficient UHCI controller, and thus use less CPU on the host.

### VGA
* The default vga device on x86 has been switched from cirrus to stdvga, which works better for most guests. However, Windows XP will not suspend to RAM anymore; the change can be undone with "-vga cirrus" and does not affect PC machine types of versions 2.1 and earlier.

## Character devices
* Support for automatic reconnection of client sockets (e.g. "-chardev socket,host=localhost,port=12345,nowait,reconnect=5").

## GUI
### Monitor
* The "info pcmcia" command was removed. PCMCIA hotplug was never implemented, and thus the command could only return static information.

## Network
* Samba 4.1 is now supported.

## Block devices in system emulation
* The list of functionality now supported in threaded virtio-blk backend is growing: new in 2.2 are resizing of disks, device hot-unplug, the embedded NBD server, and background jobs (backup, stream, mirror, commit).

# Block devices and tools
* QEMU is more resistent against failure of large allocations in the block layer
* Support for Archipelago as a QEMU block backend
* Support for Parallels images larger than 2TB.
* Migration now works when using qcow2 over Ceph.
* Network-based drivers (NBD, libiscsi, etc.) now work on Win32 hosts too.
* Source image cache mode can be set for qemu-img check, convert and rebase
* qemu-nbd has a new --detect-zeroes option.
* Progress report for qemu-img commit and qemu-img amend

# TCG
* In icount mode, it is possible to slow down emulation to match the requested CPU frequency (thus ensuring that the host and guest clocks remain aligned). This is enabled with "-icount N,align=on".
* A new "victim TLB" provides a 5-10% performance improvement.

# Tracing
* QEMU provides a SystemTap script that outputs binary trace data, for use in flight-recorder mode. The resulting traces can be parsed with QEMU's simpletrace.py script (using the --no-header command-line option).

# User-mode emulation
* New option: setting AT_RANDOM auxval with -seed option or QEMU_RAND_SEED env variable
* New system calls supported
** timerfd_create, timerfd_gettime and timerfd_settime
** ioprio_get and ioprio_set
** setns
** unshare
* epoll_pwait has been enabled on ARM
* Signal handling support added for PPC64
* Emulated contents of /proc/self/maps fixed
2014-12-11 14:04:59 +00:00
snj
7e6b85465f Update qemu to 2.1.2. Changes:
9a72433: slirp: udp: fix NULL pointer dereference because of uninitialized socket (Petr Matousek)
00dd2b2: pc: leave more space for BIOS allocations (Michael S. Tsirkin)
80f4d02: Revert "virtio: don't call device on !vm_running" (Michael S. Tsirkin)
074e347: virtio-net: drop assert on vm stop (Michael S. Tsirkin)
9e8d994: Revert "rng-egd: remove redundant free" (Eduardo Habkost)
a56b9cf: hw/machine: Free old values of string properties (Eduardo Habkost)
0717855: Revert "spapr_pci: map the MSI window in each PHB" (Greg Kurz)
82d80e1: target-i386: Support migratable=no properly (Eduardo Habkost)
5dd076a: exec: Save CPUState::exception_index field (Pavel Dovgaluk)
257e9cf: pty: Fix byte loss bug when connecting to pty (Sebastian Tanase)
1aa87d3: spice: make sure we don't overflow ssd->buf (Gerd Hoffmann)
7fe5418: vbe: rework sanity checks (Gerd Hoffmann)
c5042f0: vbe: make bochs dispi interface return the correct memory size with qxl (Gerd Hoffmann)
cf29a88: virtio-net: purge outstanding packets when starting vhost (Michael S. Tsirkin)
08743db: net: complete all queued packets on VM stop (Michael S. Tsirkin)
d9c06c0: net: invoke callback when purging queue (Michael S. Tsirkin)
f321710: virtio: don't call device on !vm_running (Michael S. Tsirkin)
ec48bfd: net: Forbid dealing with packets when VM is not running (zhanghailiang)
eb36f79: acpi-build: Set FORCE_APIC_CLUSTER_MODEL bit for FADT flags (zhanghailiang)
34d41c1: vhost-scsi: init backend features earlier (Michael S. Tsirkin)
6f8d05a: vhost_net: init acked_features to backend_features (Jason Wang)
5e83dae: vhost_net: start/stop guest notifiers properly (Jason Wang)
ff34ca0: pci: avoid losing config updates to MSI/MSIX cap regs (Knut Omang)
e685d2a: virtio-net: don't run bh on vm stopped (Michael S. Tsirkin)
67cfda8: qxl-render: add more sanity checks (Gerd Hoffmann)
4fd144f: target-arm: Correct Cortex-A57 ISAR5 and AA64ISAR0 ID register values (Peter Maydell)
ea774b8: target-arm: Fix regression that disabled VFP for ARMv5 CPUs (Peter Maydell)
3e8966d: x86: Clear MTRRs on vCPU reset (Alex Williamson)
ba8576f: x86: kvm: Add MTRR support for kvm_get|put_msrs() (Alex Williamson)
07f8c97: x86: Use common variable range MTRR counts (Alex Williamson)
72c9c9a: target-i386: Don't forbid NX bit on PAE PDEs and PTEs (William Grant)
3d8cc86: vl: process -object after other backend options (Paolo Bonzini)
0824ca6: spapr_pci: map the MSI window in each PHB (Greg Kurz)
feb6334: thread-pool: avoid deadlock in nested aio_poll() calls (Stefan Hajnoczi)
75ada6b: thread-pool: avoid per-thread-pool EventNotifier (Stefan Hajnoczi)
be3af75: pc: reserve more memory for ACPI for new machine types (Michael S. Tsirkin)
bfe3e6f: pcihp: fix possible array out of bounds (Gonglei)
cd4acff: hostmem: set MPOL_MF_MOVE (Michael S. Tsirkin)
4b59161: vmxnet3: Pad short frames to minimum size (60 bytes) (Ben Draper)
fab7560: blkdebug: Delete BH in bdrv_aio_cancel (Fam Zheng)
16c92cd: qemu-iotests: add test case 101 for short file I/O (Stefan Hajnoczi)
dea6efe: raw-posix: fix O_DIRECT short reads (Stefan Hajnoczi)
8c4edd7: block/iscsi: fix memory corruption on iscsi resize (Peter Lieven)
504e2a7: arm/virt: Use PSCI v0.2 function IDs in the DT when KVM uses PSCI v0.2 (Christoffer Dall)
2f6d5e1: target-arm: Rename QEMU PSCI v0.1 definitions (Christoffer Dall)
20463dc: target-arm: Fix return address for A64 BRK instructions (Peter Maydell)
2a575c4: virtio-blk: fix reference a pointer which might be freed (zhanghailiang)
1ad9dce: acpi: align RSDP (Michael S. Tsirkin)
ba1bc81: numa: show hex number in error message for consistency and prefix them with 0x (Hu Tao)
948574e: pc-dimm: fix up error message (Michael S. Tsirkin)
044af98: pc-dimm: validate node property (Hu Tao)
7c68c54: hw:i386: typo fix: MEMORY_HOPTLUG_DEVICE -> MEMORY_HOTPLUG_DEVICE (Hu Tao)
bd47406: ide: only constrain read/write requests to drive size, not other types (Michael Tokarev)
e22d5dc: l2tpv3 (configure): it is linux-specific (Michael Tokarev)
dfd4808: vfio: Fix MSI-X vector expansion (Alex Williamson)
5f26e63: qdev-monitor: include QOM properties in -device FOO, help output (Stefan Hajnoczi)
42f7a13: qmp: hide "hotplugged" device property from device-list-properties (Stefan Hajnoczi)
2014-10-14 21:00:15 +00:00
adam
a1cc34c65c Changes 2.1.0:
Incompatible changes:
---------------------
The 82573L NIC was incorrectly treated as an 8254xx model. It no longer works correctly on either Linux (3.14.*) or Windows 7 and has been removed.
On x86, migration from QEMU 1.7 to QEMU 2.0 was broken if the guest had PCI bridges or for some number of CPUs (12, 13, 14, 54, 55, 56, 97, 98, 99, 139, 140) are the only ones). QEMU 2.1 fixes this, so that migration from QEMU 1.7 to QEMU 2.1 should always work. However, the fix breaks the following scenarios instead:
migration from QEMU 2.0 to QEMU 2.1 with PCI bridges and machine types pc-i440fx-1.7/pc-i440fx-2.0
migration from QEMU 2.0 to QEMU 2.1 with the aforementioned number of CPUs and machine type pc-i440fx-1.7

Future incompatible changes:
----------------------------
Three options are using different names on the command line and in configuration file. In particular:
The "acpi" configuration file section matches command-line option "acpitable";
The "boot-opts" configuration file section matches command-line option "boot";
The "smp-opts" configuration file section matches command-line option "smp".
Starting with QEMU xyz.jkl, -readconfig will standardize on the name for the command line option.

ARM
---
Firmware can be passed to the vexpress machine via -bios.
Improvements to Allwinner SoC emulation.
AArch64 TCG system emulation support.
AArch64 SHA and Crypto instruction support.

LM32
----
Support for semihosting.

Microblaze
----------
Support for u-boot initrd images.

MIPS
----
Support for KVM in the Malta board.

more...
2014-08-17 08:57:01 +00:00
gson
ed8422aec1 Fix qemu bug 1335444 aka PR pkg/48071. Patches from Kirill Batuzov,
with minor changes to make them apply to 2.0.0.  Bump PKGREVISION.
2014-07-11 19:15:08 +00:00
wiz
7eeb51b534 Bump for perl-5.20.0.
Do it for all packages that
* mention perl, or
* have a directory name starting with p5-*, or
* depend on a package starting with p5-
like last time, for 5.18, where this didn't lead to complaints.
Let me know if you have any this time.
2014-05-29 23:35:13 +00:00
wiz
014679da64 Add a patch based on upstream git fixing five different CVEs in one file.
Congratulations.

Bump PKGREVISION.
2014-05-15 12:28:13 +00:00
wiz
c1b44346cd Mark packages that are not ready for python-3.3 also not ready for 3.4,
until proven otherwise.
2014-05-09 07:36:53 +00:00
ryoon
60806aa001 Recursive revbump from x11/pixman
Fix PR pkg/48777
2014-05-05 00:47:34 +00:00
wiz
fe139598f7 Fix NOT_FOR_PLATFORM; the second one was overwriting the first. 2014-04-23 20:07:48 +00:00
adam
2910e152b4 Changes 2.0.0:
Incompatible changes
All onboard buses now have distinct names, so that all of them can be reached with "-device bus=...". As a result of this, some buses that used to have duplicates got renamed:
i2c-bus.0 to i2c-bus.1 for machines n800, n810;
virtio-mmio-bus.0 to virtio-mmio-bus.3 for vexpress-a15, vexpress-a9;
virtio-mmio-bus.0 to virtio-mmio-bus.31 for virt;
usb-bus.0 to usb-bus.1 for xilinx-zynq-a9, fulong2e;
ide.0 to ide.1 for isapc, mips, g3beige, mac99, prep;
This change requires care when doing migration from 1.x to 2.x QEMU; you need to specify bus=NEW explicitly on the destination for devices on the renamed bus.
Another bus rename is pci to pci.0 for pseries. This does not require as much care on migration; if you were specifying "bus=pci" explicitly, QEMU will not start unless you change that to "bus=pci.0".
qemu-system-arm no longer defaults to the obsolete "integratorcp" if no machine is specified on the command line (this was a recurring source of confusion). Users with existing integratorcp images will need to add "-M integratorcp" to the command line if it is not already present.
Future incompatible changes
Three options are using different names on the command line and in configuration file. In particular:
The "acpi" configuration file section matches command-line option "acpitable";
The "boot-opts" configuration file section matches command-line option "boot";
The "smp-opts" configuration file section matches command-line option "smp".
Starting with QEMU 2.1, -readconfig will standardize on the name fo the command line option.
ARM
Support for "-M virt", a board type that only uses virtio devices
Support for "-cpu host" when running under KVM
Support for new 32-bit mode ARMv8 instructions in TCG
Support for all 64-bit mode ARMV8 user-accessible instructions except for the optional CRC and crypto extensions
Support for AArch64 disassembling (requires a C++ compiler to be installed on the host)
Initial support for KVM on AArch64 systems (some features such as migration are not yet implemented)
Support for the Canon PowerShot A1100 DIGIC board using "-M canon-a1100"
Support for the allwinner-a10-based board "-M cubieboard"
Support for flow control in the Cadence UART
"integratorcp" is no longer the default machine (see the 'incompatible changes' section above)
Power
Support for Altivec 2.07 and VSX instructions when running under TCG
Support for ISA 2.06 "load/store quadword instructions", "divide extended instructions" and "floating-point test instructions" when running under TCG
PReP is not anymore (incorrectly) included in qemu-system-ppcemb
Improved support for "-nodefaults" on the pSeries machine. Display devices created with "-device VGA" will be handled correctly in the device tree.
Support for boot order in pSeries emulation
s390
Support for adapter interrupts in virtio-cc2
SPARC
Support for Sun CG3 framebuffer with the Sun4m machine. The CG3 framebuffer can be requested with "-vga cg3".
Support for the CASA compare-and-swap instruction in TCG.
x86
On the Q35 machine, the HPET interrupt can now be attached to GSIs 16-23, like on real hardware.
The Q35 machine now supports CPU hotplug.
Two flash chips can be specified using the "-drive if=pflash" or "-pflash" options twice.
Memory layout has changed slightly; to improve performance, the PIIX4 machine ("-M pc") now has 3GB of low memory instead of 3.5GB if the guest has more than 3.5GB of memory. Similarly, the Q35 machine ("-M q35") now has 2GB instead of 2.75GB of low memory if the guest has more than 2.75GB of overall memory.
Support for migration of Intel MPX registers.
The Apple SMC device is now exposed in the ACPI tables.
On the PIIX machine, PCI hotplug now supports devices behind a bridge (only for bridges not added by hotplug; hot-plugged bridges can still use the PCI Standard Hot-Plug Controller).
Support for the Hyper-V reference time counter via the "hv-time" suboption of "-cpu". This can improve performance of Windows guests substantially for applications that do many floating-point or SIMD operations. (Requires KVM and Linux 3.14).
The distributed qemupciserial.inf file now allows installing multiport PCI serial devices on Windows too.
ACPI tables generated by QEMU can now be used by OVMF firmware. OVMF starting with SVN r15420 is needed. In particular hotplug, pvpanic device and other ACPI based features now work for OVMF.
KVM
x2apic is now enabled by default when KVM is in use.
Xen
PCI passthrough of devices with a ROM now works.
Xtensa
added support for ML605 and KC705 FPGA boards.
Cache-related opcodes now correctly check privilege level/memory accessibility.
2014-04-18 15:50:16 +00:00
adam
07aa7791e3 Changes 1.7.1:
This is a bug-fix release.
2014-04-01 06:47:42 +00:00
wiz
aa67e11089 Mark packages as not ready for python-3.x where applicable;
either because they themselves are not ready or because a
dependency isn't. This is annotated by
PYTHON_VERSIONS_INCOMPATIBLE=  33 # not yet ported as of x.y.z
or
PYTHON_VERSIONS_INCOMPATIBLE=  33 # py-foo, py-bar
respectively, please use the same style for other packages,
and check during updates.

Use versioned_dependencies.mk where applicable.
Use REPLACE_PYTHON instead of handcoded alternatives, where applicable.
Reorder Makefile sections into standard order, where applicable.

Remove PYTHON_VERSIONS_INCLUDE_3X lines since that will be default
with the next commit.

Whitespace cleanups and other nits corrected, where necessary.
2014-01-25 10:29:56 +00:00
wiz
9684e6f3d7 Update to 1.7.0, from tsutsui.
Changes:

System emulation

Device emulation

Audio

    The HDA device emulation now includes a mixer by default.
    Previously this had to be enabled with the configure argument
    "--enable-mixemu" when building QEMU.
    Audio will work correctly on systems without OSS (/dev/dsp).
    On previous versions, those systems needed special arguments
    to "configure" for audio to work out of the box.
    Audio honors the QEMU_AUDIO_TIMER_PERIOD environment variable
    and has less CPU utilization by default than previous versions.

Block devices

    Support for the LSI 53C810 SCSI HBA, which unlike the 895A is
    supported on some very old Windows NT versions.

Device assignment

    VFIO now supports setting CPU affinity on MSI interrupts.
    VFIO can now reset assigned devices much more reliably using
    either PCI function-level reset (FLR), power management, or a
    reset (done by the kernel) of the parent bridge.
    Several improvements to the reliability of using option ROMs
    for devices that are assigned with VFIO.

USB

    Performance and functionality improvements for USB 3.0.

MicroBlaze

    Can now specify an initrd on the command line.

PowerPC

    PowerPC now supports the dump-guest-memory command.

s390x

    The "nmi" command will trigger a crash dump from kdump, using
    a RESTART interrupt.
    The SCLP line-mode console ("operating system messages") can
    be accessed with "-device sclplmconsole".

x86

    ACPI tables can be generated by QEMU and can be used by firmware
    directly. This will in the future enable new features without
    modifications of all firmware components (SeaBIOS, OVMF,
    CoreBoot)
    Initial support for supporting more than 1TB of RAM (but firmware
    does not yet support this).
    Xen HVM domains can now resume from suspend-to-RAM (S3) state.

Monitor

    Subcommands (like "info block") can now autocomplete their
    options.
    Help for a single subcommand can be printed with a monitor
    command such as "help info block".
    New commands "blockdev-snapshot-internal-sync",
    "blockdev-snapshot-delete-internal-sync" improve support for
    internal qcow2 snapshot.
    New command "blockdev-add" provides a QMP interface for block
    device hotplug.

Block devices

    The throttling algorithm has been rewritten; the new code is
    more robust, and supports configuration of separate limits for
    sustained I/O vs. I/O bursts

Migration

    Migration was broken from QEMU <= 1.5 to 1.6; the new release
    fixes it.

User-mode emulation

    M68K ColdFire emulation supports atomic system calls.

Block devices, qemu-img, qemu-io

    The sheepdog driver supports automatic reconnect after network
    errors
    The VMDK driver supports files produced by VMWare ESX.
    The qcow2 driver can detect some cases of corruption, and will
    prevent writing to a corrupted image.
    The VHDX driver supports creating and writing .vhdx images.
    The metadata of a file (where each sector of the guest image
    is stored in the file on the host) can be dumped in human-readable
    or JSON format using a new command "qemu-img map".

Guest agent

    The "filesystem freeze/thaw" commands are now supported on
    Windows too, where they will invoke the native Volume Shadow
    Copy Service (VSS).

Miscellaneous

    For targets that have no embedded disassembler, QEMU will now
    produce hexadecimal dumps instead of just emitting an error
    when a disassembly is requested. The enclosed script disas-objdump.pl
    can be used, together with an external objdump program, to
    convert the dump to a readable disassembly.

Host support

    TCG now runs on x32 hosts.

Known issues

    On Win32, QEMU must be compiled with --disable-coroutine-pool
    to work around a suspected compiler bug.
    The GTK terminal windows (monitor, serial console, parallel,
    ...) are still unusable in TCG mode: they lose characters and
    can raise deadlocks.
2014-01-15 18:26:20 +00:00
adam
ac85403fbb Changes 1.6.2:
Bug-fix release.
2014-01-11 13:08:59 +00:00
hubertf
88c1a50d88 Make this build on Mac OS X 10.7.x - the linker needs ranlink ran
(via ar), else it will fail to link.

OK joerg@
2013-10-27 16:33:25 +00:00
joerg
aa99a1cefc Provide some sane ARFLAGS. 2013-10-26 23:23:41 +00:00
asau
808f04bf22 It needs bison to build. 2013-10-26 13:39:37 +00:00
joerg
74feac337d More target emulation binaries for Linux. 2013-10-20 17:43:06 +00:00
ryoon
101fb00429 Update to 1.6.1
Changelog:
* Improve tap networking support for *BSD.
* Bugfixes
2013-10-13 12:37:58 +00:00
jperkin
cdfecc80e8 Fix PLIST on SunOS 5.11. 2013-09-12 15:44:13 +00:00
jnemeth
487792e0e6 add a comment to USE_NCURSES line 2013-09-03 02:23:52 +00:00
jnemeth
f94c684ddd qemu requires ncurses, make it so. 2013-08-25 02:26:38 +00:00
adam
3d3c9afb1f Changes 1.6.0:
Block devices
* New device "nvme" provides a PCI device that implements the NVMe standard.
* Fix for a possible data loss on crashes with IDE disks (due to mishandling of FLUSH requests)

Device assignment
* Legacy PCI assignment supports CPU affinity for MSI interrupts.

USB
* The XHCI (USB 3.0) controller supports live migration.

PCI
* ACPI hotplug of devices behind a PCI bridge is supported.

ARM
* The 32-bit ARMv8 LDA/STL instructions for load-acquire/store-release are supported (only with -cpu any); the remainder of the new v8 instructions will follow in a future release.
* The vexpress-a9 and vexpress-a15 boards have experimental support for virtio devices via a virtio-mmio transport. Note that the virtio command lines used with x86 systems won't work as they will create PCI virtio devices; use the devices "virtio-blk-device", "virtio-net-device", etc instead. Note that this functionality may change in future releases.
* The -initrd option now accepts ramdisks with a U-Boot header.
* A model of the Calxeda ECX-2000 / Midway system is now supported ("midway").

PPC
* Mac OS X guests supported (10.2-10.4 for PPC, 10.4 for PPC64)
* pSeries guests support live migration and savevm.

s390x
* If the kernel supports it, virtio-ccw supports ioeventfd and vhost when running on KVM.
* The dump-guest-memory command is supported.

SPARC
* Sun4c and Sun4d architectures and related CPUs were not fully implemented and have been removed.
* 24-bit display mode works

x86
* Firmware can be exposed to the guest as a flash device (using -pflash) also when running on KVM.
* In addition to the "xenfv" machine type, which is kept for backwards compatibility, Xen can now use the pc machine type (including versioned machine types) using "-M pc -machine accel=xen". Note that using PV-on-HVM drivers requires "-M pc -machine accel=xen -device xen-platform".
* QEMU can expose the full set of ACPI tables to the guest: See Features/ACPITableGeneration
* Conroe, Penryn and Nehalem CPUs have had their CPUID values fixed
* "-M isapc" now works on KVM too.
* -pflash can be used with KVM too.

more...
2013-08-16 21:20:11 +00:00
adam
f1464978e3 Changes 1.5.2:
* Bug fixes and improvements.
2013-07-29 13:10:26 +00:00
tsutsui
76a73cd850 Update qemu to 1.5.1.
pkgsrc changes:

- remove now unnecessary SUBST for audio.h conflicts
- update PLIST for new files
- adjust patches for hw directory reorganization
- update counting semaphore patches per comments on qemu-devel

Upstream changes:

Changes mentioned in 1.5.1 announcement:
http://lists.nongnu.org/archive/html/qemu-devel/2013-06/msg04798.html

295d81c: Update VERSION for 1.5.1 release (Anthony Liguori)
cc0bd7e: wdt_i6300esb: fix vmstate versioning (Michael Roth)
12e5b2b: virtio-rng: Fix crash with non-default backend (Cole Robinson)
cb55efe: iscsi: reorganize iscsi_readcapacity_sync (Paolo Bonzini)
1b94fc4: iscsi: simplify freeing of tasks (Paolo Bonzini)
5e690bb: vhost-scsi: fix k->set_guest_notifiers() NULL dereference (Stefan
         Hajnoczi)
129db36: scsi-disk: scsi-block device for scsi pass-through should not be
         removable (Pavel Hrdina)
637d640: scsi-generic: check the return value of bdrv_aio_ioctl in
         execute_command (Pavel Hrdina)
9c4f5dd: scsi-generic: fix sign extension of READ CAPACITY(10) data (Paolo
         Bonzini)
3abd71c: scsi: reset cdrom tray statuses on scsi_disk_reset (Pavel Hrdina)
5fcb9bf: nbd: strip braces from literal IPv6 address in URI (Jan Tomko)
6c8cf5f: qemu-socket: allow hostnames starting with a digit (Jan Tomko)
ce4e8f0: vmdk: byteswap VMDK4Header.desc_offset field (Stefan Hajnoczi)
c683f1b: target-i386: cpu: Fix potential buffer overrun in
         get_register_name_32() (Igor Mammedov)
75e4aa9: pc: Fix crash when attempting to hotplug CPU with negative ID (Igor
         Mammedov)
055a7fc: smbios: Check R in -smbios type=0, release=R parses okay (Markus
         Armbruster)
93bc624: smbios: Fix -smbios type=0, release=... for big endian hosts (Markus
         Armbruster)
61fbaee: smbios: Clean up smbios_add_field() parameters (Markus Armbruster)
685ee2d: smbios: Convert to error_report() (Markus Armbruster)
fa0f47d: log.h: Supply missing includes (Markus Armbruster)
7552569: error-report.h: Supply missing include (Markus Armbruster)
02d2672: tcg-ppc64: rotr_i32 rotates wrong amount (Anton Blanchard)
2917f6b: tcg-ppc64: Fix add2_i64 (Anton Blanchard)
9534f66: tcg-ppc64: bswap64 rotates output 32 bits (Anton Blanchard)
d208f05: tcg-ppc64: Fix RLDCL opcode (Anton Blanchard)
6b6f105: ivshmem: add missing error exit(2) (Stefan Hajnoczi)
3202c02: Makefile: Install qemu-img and qemu-nbd man pages only if built
         (Andreas Farber)
5a893b0: tap: fix NULL dereference when passing invalid parameters to tap
         (Jason Wang)
0817fa9: create qemu_openpty_raw() helper function and move it to a separate
         file (Michael Tokarev)
5810174: blockdev: reset werror/rerror on drive_del (Stefan Hajnoczi)
eeaa8d3: q35: set fw_name (Michael S. Tsirkin)
c127070: target-i386: Fix aflag logic for CODE64 and the 0x67 prefix (Richard
         Henderson)
252a7c6: qemu-char: don't issue CHR_EVENT_OPEN in a BH (Michael Roth)
6f3718c: xilinx_axidma: Do not set DMA .notify to NULL after notify (Wendy
         Liang)
1fb147f: virtio-ccw: Fix unsetting of indicators. (Cornelia Huck)
72762f2: s390x/css: Fix concurrent sense. (Cornelia Huck)
31ba701: ui/gtk.c: Fix *BSD build of Gtk+ UI (Brad Smith)
9ca80c7: vmxnet3: fix NICState cleanup (Stefan Hajnoczi)
a548bac: Fix usage of USB_DEV_FLAG_IS_HOST flag. (Michael Marineau)
9b5751e: host-libusb: Correct test for USB packet state (Ed Maste)
032ce1b: qdev: fix get_fw_dev_path to support to add nothing to fw_dev_path
         (Amos Kong)
baa8a8b: do not check pointers after dereferencing them (Paolo Bonzini)
327e75b: xen: start PCI hole at 0xe0000000 (same as pc_init1 and
         qemu-xen-traditional) (Stefano Stabellini)
9e7fdaf: Remove OSS support for OpenBSD (Brad Smith)
d503afb: target-i386: fix abort on bad PML4E/PDPTE/PDE/PTE addresses (Luiz
         Capitulino)
5b3ca29: update seabios to release 1.7.2.2 (Gerd Hoffmann)
7b9cdc5: Revert "roms: switch oldnoconfig to olddefconfig" (Gerd Hoffmann)
0565700: ide: Set BSY bit during FLUSH (Andreas Farber)
ddaa83e: chardev: fix "info chardev" output (Gerd Hoffmann)
38ec6c1: xen_machine_pv: do not create a dummy CPU in machine->init (Stefano
         Stabellini)
951411f: main_loop: do not set nonblocking if xen_enabled() (Stefano Stabellini)
5c26608: xen: simplify xen_enabled (Stefano Stabellini)
3541912: qom/object: Don't poll cast cache for NULL objects (Peter Crosthwaite)
749806d: rtl8139: flush queued packets when RxBufPtr is written (Stefan
         Hajnoczi)
a6fc2cd: hw/9pfs: use O_NOFOLLOW for mapped readlink operation (Aneesh Kumar
         K.V)
eabdf85: hw/9pfs: Fix segfault with 9p2000.u (Aneesh Kumar K.V)

Changelog 1.5:
http://wiki.qemu.org/ChangeLog/1.5

General
-------

 - The default for log output enabled via the '-d' command line switch is now
   standard error rather than a file. You can obtain the previous behaviour
   using the '-D' command line switch to specify a file to send the logging to.
 - QEMU now uses poll rather than select, and thus does not have any
   restriction on the number of open file descriptors.

System emulation
----------------

 Device emulation

  Audio

   - The --audio-card-list configure option is not used anymore. Instead, you
     can modify default-configs/pci.mak (for the PCI soundcards AC97, HDA and
     ES1370) and default-configs/sound.mak (for the ISA soundcards) before
     running "make".
   - The "shortcut" -soundhw option is now available for all targets that have
     a PCI bus.

  Device assignment

   - VFIO supports primary VGA passthrough using the experimental "x-vga=on"
     option. The following devices seem to work: Nvidia 8400gs, 73001e, NVS290;
     ATI/AMD Radeon HD5450 and HD7850.
   - VFIO devices support the bootindex= property to override the default boot
     order for assigned PCI devices.

  USB

   - Experimental support for USB 3.0 streams, both in the nec-usb-xhci
     controller and in the usb-uas USB-attached SCSI device emulation.
   - USB device passthrough has been rewritten to use libusb. For Linux, the
     two backends can be compiled in a single QEMU executable (if libusb is
     enabled, usb-host-linux will be the legacy implementation, usb-host will
     be the libusb-based one; if libusb is disabled, usb-host will be the
     legacy implementation). For BSD, it has to be chosen at configure time
     using --enable/disable-libusb (the default is to use libusb if it is
     available, otherwise use the legacy implementation).

  SCSI

   - QEMU can now emulate the VMware PVSCSI device using "-device pvscsi".
   - QEMU can now use tcm_vhost, a virtio-scsi device model based on the
     Linux-iSCSI implementation of SCSI.

  Network cards

   - QEMU can now emulate the VMware paravirtualized network card using
     "-device vmxnet3".

 ARM

  - This release has initial support of KVM for the ARM architecture.
    This requires a 3.9 or better Linux kernel and a Cortex-A15 CPU.
  - The Zynq board provides a SD host controller interface.
  - The PCI controller model for VersatilePB and Realview boards has been
    significantly improved in functionality (including MMIO BAR support and
    a correct PCI IRQ mapping). Note that Linux kernels currently do not take
    advantage of this; however we autodetect kernels that expect the behaviour
    of an old broken QEMU and fall back to that. (The old IRQ behaviour can
    be forced with "-global versatile_pci.broken-irq-mapping=1" if absolutely
    necessary.)
  - Incorrect handling of the SRS instruction in Thumb mode has been fixed.
  - Performance of TCG emulation of ARM targets is improved over previous
    releases.
  - Migration and vm save/load now works correctly on the vexpress-a15 and
    vexpress-a9 models.

 PPC

  - Various improvements to TCG code generation
  - KVM synchronizes more state
  - Fix a few issues that blocked Mac OS X from working (still not 100% there
    though!)
  - Refactoring and improvement of soft mmu emulation for book3s
  - Implement various new instructions for ISA 2.05 and ISA 2.06 compatibility
    (-cpu POWER7)
  - Implement support for KVM based e500 family watchdog

 s390x

  - Various accuracy fixes for device emulation
  - Faster I/O hypercalls
  - Add firmware to boot from virtio-ccw disks
  - Guest kernel panics are notified to the host

 SPARC

  - Improve sun4u interrupt mapping, so that multiple PCI devices can be used
    simultaneously

 x86

  - x86 supports emulation of a TPM (Trusted Platform Module) on machines
    that have a hardware TPM
  - Various speedups in TCG emulation of x86
  - The iPXE ROMs that are distributed with QEMU support EFI
  - TCG supports the SSE4.1, SSE4.2, PCLMULQDQ, AES-NI, BMI and ADX extensions.
  - A paravirtual device is included that lets the guest notifies kernel
    panics to the host.
  - CPU hot-add support with cpu-add QMP command. More details
    Features/CPUHotplug.
  - new CPU properties "feature-words" and "filtered-features" to allow
    introspection of supported and not supported CPU features.
   - For reference and examples of how the new properties can be used by
     libvirt and other components, see:
 http://wiki.qemu.org/Features/CPUModels#Interfaces.2Frequirements_for_libvirt

 QMP

  - QEMU now generates a DEVICE_DELETED event when the guest acknowledges
    a device hot-unplug operation.
  - Much better handling for non-ASCII codepoints in JSON strings

 Character devices

  - Character devices gained support for flow control. More details in
    Features/ChardevFlowControl
  - All kinds of character devices can now be hot-plugged. Character device
    hotplug is also supported from the "human" monitor.

 Block devices

  - IDE and SCSI disks always have the ability to issue "discard" (aka TRIM or
    UNMAP) commands. However, by default "discard" commands are silently
    ignored as they can cause performance degradation and fragmentation.
    To enable them, the "-drive" option now supports a "discard" suboption;
    the default value is "ignore" (or its synonym "off"), and the other valid
    value is "unmap" (or "on").
  - Sheepdog drives can also be specified with URIs.
  - iSCSI disks support on-line resizing using block_resize. Similar to block
    devices, the resize has to be done first outside QEMU.
  - Various performance improvements in qcow2 internal snapshots (savevm).
  - The NBD backend has improved latency.
  - qemu-nbd can now skip image format probing using the -f/--format
    command-line option.
  - VHDX (MS Hyper-V) image format has initial read-only support. Dynamic and
    fixed sized disks are supported, but not differencing images (e.g. VHDX
    images with a backing file). Read-only is strictly enforced, and the
    'readonly=on' option must be used for any VHDX images.
  - Secure Shell (ssh) support. Access remote disks over ssh using
    qemu -drive file=ssh://host/path/to/file

 Live Migration

  - Further improvements in throughput (up to +130%: 4.2 Gbps in 1.5 vs
    1.8 Gbps in 1.4) and latency.

 User interface

  - QEMU now provides a GTK+ interface. The interface uses the VTE library
    to provide better terminal emulation for serial consoles and the monitor.
  - A new VNC extension has been added to communicate LED state changes for
    the keyboard.

 VNC

  - Websocket connections can now be encrypted with TLS.

User-mode emulation
-------------------

 - Threaded programs are now more stable, though still experimental.

Guest agent
-----------

 - New commands in qemu-ga let the host put CPUs online/offline with help
   from the guest OS (Linux only)
 - Low impact CVE-2013-2007 ("qemu: guest agent creates files with insecure
   permissions in daemon mode") is fixed.
  - Note for guest administrators: unix domain sockets, logfiles etc.
    created by previous versions of qemu-ga do not have their file mode
    bits reset by this change; only newly created files have mode 0600
    when daemonizing. Please delete your old files or change their
    permissions manually when upgrading.
  - The guest-file-open QMP command continues to create files with mode
    0666 for compatibility reasons.

Host support
------------
 - QEMU is now a lot faster on Windows hosts than in previous versions
 - libcacard has been ported to Windows.

 Known issues

  - The GTK+ backend does not compile on BSD systems (including Mac OS X).
    This will likely be fixed in a later stable update.
2013-07-09 17:00:58 +00:00
tsutsui
6708aad438 Fix a hangup problem under load of multiple disk xfers on NetBSD hosts.
- fix a "fallback implementation of counting semaphores with mutex+condvar":
http://git.qemu.org/?p=qemu.git;a=commit;h=c166cb72f1676855816340666c3b618beef4b
976
  - waiting threads are not restarted properly if more than one threads
    are waiting unblock signals in qemu_sem_timedwait()
  - possible missing pthread_cond_signal(3) calls when waiting threads
    are returned by ETIMEDOUT
 - fix an uninitialized variable
Discussed with and patch is provieded by soda@.

XXX: configure should check if the target system has sem_timedwait(3)
     to switch this fallback implementation since sem_timedwait(3) has
     been added in NetBSD -current:
     http://mail-index.NetBSD.org/source-changes/2012/03/08/msg032625.html
     http://mail-index.NetBSD.org/source-changes/2012/03/08/msg032626.html

Bump PKGREVISION.
2013-06-28 19:30:28 +00:00
tsutsui
906743ef6b Make qemu-1.4.2 build on NetBSD/arm 6.1
NetBSD/i386 6.1 on QEMU on NetBSD/hpcarm 6.1 on W-ZERO3 somewhat works.
2013-06-27 14:09:35 +00:00
tsutsui
6011a0ae85 Update qemu to 1.4.2.
pkgsrc changes:
 - update PLIST for new files
 - update patches (adjust lines, update comments)
 - remove unnecessary files from subst list

XXX1: tested only on NetBSD/i386 6.1 and NetBSD/amd64 6.1
XXX2: needs to investicate hangup in pthread_cond_timedwait(3) on NetBSD
      under load of multiple disk xfers (1.3.1 had the similar problem)

Upstream changes:

Changes mentioned in 1.4.2 announcment:
 http://lists.nongnu.org/archive/html/qemu-stable/2013-05/msg00095.html

89400a8: update VERSION for 1.4.2 (Michael Roth)
e85b521: ppc: do not register IABR SPR twice for 603e (Herve Poussineau)
f890185: hw/9pfs: use O_NOFOLLOW for mapped readlink operation (Aneesh Kumar
         K.V)
745f6c0: hw/9pfs: Fix segfault with 9p2000.u (Aneesh Kumar K.V)
0182df5: rbd: add an asynchronous flush (Josh Durgin)
7f28f0f: qemu-iotests: add tests for rebasing zero clusters (Paolo Bonzini)
45bbe1f: virtio-balloon: fix integer overflow in BALLOON_CHANGE QMP event (Luiz
         Capitulino)
06efdc4: qemu-timer: move timeBeginPeriod/timeEndPeriod to os-win32 (Paolo
         Bonzini)
0c70b5a: configure: Don't fall back to gthread coroutine backend (Brad Smith)
b90fd15: usb-redir: Fix crash on migration with no client connected (Hans de
         Goede)
7322cb1: docs: Fix generating qemu-doc.html with texinfo 5 (Cole Robinson)
1d7723f: qga: unlink just created guest-file if fchmod() or fdopen() fails on
         it (Laszlo Ersek)
67b460a: qga: distinguish binary modes in "guest_file_open_modes" map (Laszlo
         Ersek)
84247bb: translate-all.c: Remove cpu_unlink_tb() (Peter Maydell)
2ebcc59: Handle CPU interrupts by inline checking of a flag (Peter Maydell)
69001b3: cpu-exec: wrap tcg_qemu_tb_exec() in a fn to restore the PC (Peter
         Maydell)
3accab7: tcg: Document tcg_qemu_tb_exec() and provide constants for low bit
         uses (Peter Maydell)
6025953: qga: set umask 0077 when daemonizing (CVE-2013-2007) (Laszlo Ersek)
93399d0: tcg/optimize: fix setcond2 optimization (Aurelien Jarno)
074dd56: target-mips: Fix accumulator arguments to gen_helper_dmult(u) (Richard
         Sandiford)
d10d251: configure: Pick up libseccomp include path (Andreas Faber)
5613bda: virtio-ccw: Check indicators location. (Cornelia Huck)
c5675a9: tap: properly initialize vhostfds (Jason Wang)
e355efd: rng random backend: check for -EAGAIN errors on read (Amit Shah)
4d7f455: qdev: Fix QOM unrealize behavior (Andreas Farber)
0486c27: nbd: unlock mutex in nbd_co_send_request() error path (Stefan Hajnoczi)

Changes mentioned in 1.4.1 announcment:
 http://lists.nongnu.org/archive/html/qemu-stable/2013-04/msg00071.html

57105f7: update VERSION for 1.4.1 (Michael Roth)
6e88653: Add -f FMT / --format FMT arg to qemu-nbd (Daniel P. Berrange)
6d0b135: target-mips: Fix accumulator selection for MIPS16 and microMIPS
         (Richard Sandiford)
d89f9ba: Allow clock_gettime() monotonic clock to be utilized on more OS's
         (Brad Smith)
46f9071: target-i386: Check for host features before filter_features_for_kvm()
         (Eduardo Habkost)
f85e082: help: add docs for missing 'queues' option of tap (Jason Wang)
da78a1b: compiler: fix warning with GCC 4.8.0 (Paolo Bonzini)
2b92aa3: block: complete all IOs before resizing a device (Peter Lieven)
e4cce2d: Revert "block: complete all IOs before .bdrv_truncate" (Peter Lieven)
d15b1aa: qxl: better vga init in enter_vga_mode (Gerd Hoffmann)
65fe29e: doc: Fix texinfo @table markup in qemu-options.hx (Markus Armbruster)
888e036: acpi: initialize s4_val used in s4 shutdown (Bruce Rogers)
d019dd9: target-mips: fix rndrashift_short_acc and code for EXTR_ instructions
         (Petar Jovanovic)
dac077f: target-mips: fix DSP overflow macro and affected routines (Petar
         Jovanovic)
b09a673: target-mips: fix for sign-issue in MULQ_W helper (Petar Jovanovic)
79a4dd4: target-mips: fix for incorrect multiplication with MULQ_S.PH (Petar
         Jovanovic)
57e929c: usb-tablet: Don't claim wakeup capability for USB-2 version (Hans de
         Goede)
27c7135: chardev: clear O_NONBLOCK on SCM_RIGHTS file descriptors (Stefan
         Hajnoczi)
283b7de: qemu-socket: set passed fd non-blocking in socket_connect() (Stefan
         Hajnoczi)
a1cb89f: net: ensure "socket" backend uses non-blocking fds (Stefan Hajnoczi)
68f9df5: oslib-posix: rename socket_set_nonblock() to qemu_set_nonblock()
         (Stefan Hajnoczi)
0135796: update seabios to 1.7.2.1 (Gerd Hoffmann)
799a34a: linux-user/syscall.c: Don't warn about unimplemented get_robust_list
         (Peter Maydell)
8378910: linux-user: make bogus negative iovec lengths fail EINVAL (Peter
         Maydell)
7a238b9: linux-user: fix futex strace of FUTEX_CLOCK_REALTIME (John Rigby)
02493ee: linux-user/syscall.c: handle FUTEX_WAIT_BITSET in do_futex (John Rigby)
7d47b24: qcow2: flush refcount cache correctly in qcow2_write_snapshots()
         (Stefan Hajnoczi)
02ea844: qcow2: flush refcount cache correctly in alloc_refcount_block()
         (Stefan Hajnoczi)
0fcf00b: page_cache: fix memory leak (Peter Lieven)
5610ef5: Fix page_cache leak in cache_resize (Orit Wasserman)
7a687ae: virtio-blk: fix unplug + virsh reboot (Christian Borntraeger)
b91aee5: ide/macio: Fix macio DMA initialisation. (Mark Cave-Ayland)
e09b99b: target-ppc: Fix CPU_POWERPC_MPC8547E (Andreas Farber)
611c7f2: pseries: Add cleanup hook for PAPR virtual LAN device (David Gibson)
4e4566c: configure: Require at least spice-protocol-0.12.3 (Michal Privoznik)
43e0061: qemu-bridge-helper: force usage of a very high MAC address for the
         bridge (Paolo Bonzini)
3c3de7c: virtio-ccw: Queue sanity check for notify hypercall. (Cornelia Huck)
b0da310: tcg: Fix occasional TCG broken problem when ldst optimization enabled
         (Yeongkyoon Lee)
d26efd2: qga/main.c: Don't use g_key_file_get/set_int64 (Peter Crosthwaite)
f305d50: qemu-ga: use key-value store to avoid recycling fd handles after
         restart (Michael Roth)
d3652a1: qcow2: make is_allocated return true for zero clusters (Paolo Bonzini)
5194350: pseries: Add compatible property to root of device tree (David Gibson)
4d1cdb9: Allow virtio-net features for legacy s390 virtio bus (Christian
         Borntraeger)
c3b81e0: rtc-test: Fix test failures with recent glib (Cole Robinson)
99b1f39: scsi-disk: do not complete canceled UNMAP requests (Paolo Bonzini)
f23ab03: scsi: do not call scsi_read_data/scsi_write_data for a canceled
         request (Paolo Bonzini)
0c918dd: iscsi: look for pkg-config file too (Paolo Bonzini)
a8b090e: scsi-disk: handle io_canceled uniformly and correctly (Paolo Bonzini)
4a38944: qemu-ga: make guest-sync-delimited available during fsfreeze (Michael
         Roth)
b7ff1a7: qmp: netdev_add is like -netdev, not -net, fix documentation (Markus
         Armbruster)
d49fed4: vga: fix byteswapping. (Gerd Hoffmann)
cebb8eb: help: add docs for multiqueue tap options (Jason Wang)
3b39a11: net: reduce the unnecessary memory allocation of multiqueue (Jason
         Wang)
ec9f828: qemu-char.c: fix waiting for telnet connection message (Igor Mitsyanko)
332e934: tap: forbid creating multiqueue tap when hub is used (Jason Wang)
e6b795f: block: complete all IOs before .bdrv_truncate (Peter Lieven)
51968b8: coroutine: trim down nesting level in perf_nesting test (Paolo Bonzini)
80d8b5d: target-ppc: Fix "G2leGP3" PVR (Andreas Farber)

ChangeLog 1.4
 http://wiki.qemu.org/ChangeLog/1.4

System emulation
----------------

 Device emulation

  Device issignment

   - Improved support for MSI-X on some Mellanox devices.
   - VFIO supports PCIe extended configuration space.

  USB
   - Various CPU usage and throughput improvements for USB 2.0.
   - usb-tablet can be connected as an USB 2.0 device, also lowering
     the CPU usage substantially.
   - Improved support for pass-through of USB serial devices.
   - A new device usb-bot is the same as usb-storage, but is configured
     like other SCSI adapters and supports multiple LUNs.

  Network
   - virtio-net supports multiqueue operation.

  Other
   - Added support for IndustryPack emulation. The TEWS TPCI200 device
     emulation (device "tpci200") hosts IndustryPack modules, and the
     GE IP-Octal 232 emulation (device "ipoctal232") implements eight
     RS-232 serial ports.

 ARM

  - Various minor bugfixes; no new features in this release.

 MIPS

  - Improved support for DSP instructions.

 PowerPC

  - pSeries: NVRAM support for improved guest installation experience
  - G3/G4: Allow dcbzl (for Mac OS X guests)
  - e500: Linux guests don't use use SWTLB anymore, freeing memory for
          real applications
  - e500: MSI support
  - e500: Allow for up to 31 PCI devices with -M ppce500
  - e500: Support idle hcall when running KVM on e500mc or above
  - e500: Emulate the EPR facility (e500mc and above)
  - PReP: Emulate a full PC87312 Super I/O chipset. This adds a parallel
          port. Changing the chipset configuration register at runtime is
          not yet supported.

 S390

  - New virtio-ccw machine and transport support
  - Add -cpu ? support
  - Improved support for S390 emulation.

 x86

  - Generation of APIC IDs for NUMA configuration is now compatible with
    the Intel(R) 64 Architecture Processor Topology Enumeration
  - Many fixes to the Q35 chipset emulation, including experimental AHCI
    migration support and support for device assignment.
  - Resetting the machine with a write to port 0xCF9 now works.
  - The xlevel argument for -cpu option currently silently fix-ups the
    user-provided value if it's less than 0x80000000. This will be
    removed in future QEMU versions; users are expected to provide valid
    xlevel value or QEMU will fail to start.

 KVM

  - New devices isa-debug-exit and pc-testdev can be used to run
    kvm-unit-tests.

 Xen

  - Persistent grants support implemented in xen_disk, giving substantial
    performance improvements.
  - xen_disk supports BLKIF_OP_FLUSH_DISKCACHE, making the device safer
    against power losses.
  - xen_console supports multiple secondary PV consoles.

 QMP

  - New commands chardev-add and chardev-del add support for hotplugging
    character devices.
  - New ringbuf-read/ringbuf-write to read and write to memory chardevs
  - Various improvements in error messages

 Block devices

  - Discard operations are now supported on block devices and on
    filesystems other than XFS. They are also fully asynchronous now.
  - Block device mirroring (also known as storage migration) performance
    was greatly improved.
  - New experimental threaded backend for virtio-block-pci. This new
    backend achieves several times the IOPS of the existing virtio-blk
    implementation; for now it can only be used for raw image files and
    disables features such as live snapshots and storage migration.

 Live Migration

  - Moved migration from a timer to a thread, improving latency in
    other parts of QEMU and throughput of migration itself
  - Many machine models are now correctly marked as not migratable.

 Spice

  - A new spiceport character device can be used to support arbitrary
    communication between the SPICE server on the host and the client.

 VNC

  - Added support for the Websocket protocol.

User-mode emulation
-------------------

 - Fix ppc guest signal handling
 - Fix MIPS target

Guest agent
-----------

 - qemu-ga supports hooks that are executed when the guest receives
   the guest-fsfreeze-freeze and guest-fsfreeze-thaw commands

Host support
------------

 - Native asynchronous I/O for Win32 (introduced in 1.3) now actually works.
2013-06-16 18:27:25 +00:00
wiz
d2ca14a3f1 Bump all packages for perl-5.18, that
a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package

Like last time, where this caused no complaints.
2013-05-31 12:39:57 +00:00
tsutsui
05d65cc6cf Update qemu to 1.3.1. (updating during freeze is ok'ed by wiz@)
Note the previous qemu-1.3.0 has some problems to run
NetBSD/i386 6.0.1 guest on NetBSD/i386 6.0.1 host, but
with qemu-1.3.1 NetBSD/i386 guest works enough upto multiuser.

No explicit ChangeLog of qemu-1.3.1 release,
but there is a summary in qemu mailing list announcement:
http://lists.nongnu.org/archive/html/qemu-stable/2013-01/msg00126.html

04024de: update VERSION for v1.3.1 (Michael Roth)
1bd4397: qxl: Fix SPICE_RING_PROD_ITEM(), SPICE_RING_CONS_ITEM() sanity check
         (Markus Armbruster)
e766724: Fix compile errors when enabling Xen debug logging. (Sander
         Eikelenboom)
df50a7e: xen: fix trivial PCI passthrough MSI-X bug (Stefano Stabellini)
90c96d3: xen_disk: fix memory leak (Roger Pau Monne)
4ee2879: tcg/target-arm: Add missing parens to assertions (Peter Maydell)
563068a: win32-aio: Fix memory leak (Kevin Wolf)
cdb4834: win32-aio: Fix vectored reads (Kevin Wolf)
9d173df: aio: Fix return value of aio_poll() (Kevin Wolf)
204dd38: raw-posix: fix bdrv_aio_ioctl (Paolo Bonzini)
86bab45: vfio-pci: Loosen sanity checks to allow future features (Alex
         Williamson)
006c747: pci-assign: Enable MSIX on device to match guest (Alex Williamson)
f042cca: vfio-pci: Make host MSI-X enable track guest (Alex Williamson)
1205b80: target-xtensa: fix search_pc for the last TB opcode (Max Filippov)
ff0c079: buffered_file: do not send more than s->bytes_xfer bytes per tick
         (Paolo Bonzini)
d745511: migration: fix migration_bitmap leak (Paolo Bonzini)
5afd0ec: e1000: Discard oversized packets based on SBP|LPE (Michael Contreras)
c4cd5b0: qxl+vnc: register a vm state change handler for dummy spice_server
         (Uri Lublin)
7ca2496: qxl: save qemu_create_displaysurface_from result (Gerd Hoffmann)
bfae937: target-xtensa: fix ITLB/DTLB page protection flags (Max Filippov)
b68c48f: pixman: fix vnc tight png/jpeg support (Gerd Hoffmann)
36fd817: Update seabios to a810e4e72a0d42c7bc04eda57382f8e019add901 (Gerd
         Hoffmann)
0bc5f4a: seabios: update to e8a76b0f225bba5ba9d63ab227e0a37b3beb1059 (Gerd
         Hoffmann)
37e1428: vfio-pci: Don't use kvm_irqchip_in_kernel (Alex Williamson)
518799a: target-mips: Fix incorrect shift for SHILO and SHILOV (Petar Jovanovic)
16c5fe4: target-mips: Fix incorrect code and test for INSV (Petar Jovanovic)
f1a2195: migration: Fix madvise breakage if host and guest have different page
         sizes (David Gibson)
3b4fc1f: Fix off-by-1 error in RAM migration code (David Gibson)
d67d95f: Disable semaphores fallback code for OpenBSD (Brad Smith)
0a7ad69: Fix semaphores fallback code (Brad Smith)
2013-03-29 15:26:26 +00:00
wiz
b3484699b8 Add pixman dependency.
Otherwise, it tries to use the included copy, but fails because autoreconf
is not found.
2013-01-28 14:11:52 +00:00
ryoon
99120ed21a Update to 1.3.0
Changelog:
QMP
    The sendkey monitor command is now available via QMP.

All targets
    QEMU can now use the Linux VFIO driver to assign PCI devices to a virtual machine.
    The bus master configuration bit for PCI devices is now emulated. PCI devices cannot anymore perform DMA without setting the bit before. This may break firmware that wasn't tested on real hardware.

MIPS
    Loongson Multimedia Instructions are now implemented.
    MIPS32/64 ASE DSP Instructions are now implemented.

x86
    The TSC frequency can be larger than 2.147 GHz.
    Configuration files do not support anymore the cpudef section.
    TCG (emulation) supports the SMEP (Supervisor Mode Execution Prevention) and SMAP (Supervisor Mode Access Prevention) features of newer x86 processors.
    CPUID/models?
    The "cpudef" config file section is now deprecated and will be removed in v1.4.
    New CPU models: "Haswell" (new features: fma, pcid, movbe, fsgsbase, bmi1, hle, avx2, smep, bmi2, erms, invpcid, rtm) and "Opteron_G5" (new features: tbm, f16c, fma)
    Added Intel Q35 chipset as a new machine type, '--machine q35'. Adds PCIe support. Requires an updated SeaBIOS (bios.bin), and '-acpitable file=/seabios-path/q35-acpi-dsdt.aml' to run.

Xtensa
    Single precision floating point instructions are now implemented.

Device emulation
    Emulation of the MC146818 real-time clock (used on PC and several other boards) does not wake up QEMU anymore every second to update the clock.
    USB3 has been vastly improved, including support for USB mass storage devices and MSI/MSI-X support for the XHCI controller.
    USB redirection now supports live migration.
    Several bugs in the AHCI controller were fixed to support recent Windows versions.
    ivshmem now has a "use64" property which will make the ivshmem driver register a 64-bit memory BAR.
    New paravirtualized hardware random number generator device, VirtIORNG.

Network devices
    Some problems were fixed leading to bad receive performance of E1000 and Xen network cards.

Block devices
    qemu-img now can output information in JSON format using "qemu-img info --output=json".
    Glusterfs volumes can be accessed with "gluster://" URIs for "-drive" and similar options. Optionally the transport can also be specified, as in "gluster+tcp://" (other supported transports are "unix" and "rdma").
    Options on the QMP streaming command direct the job to pause on encountering errors, or to ignore them altogether.
    A new block job is supported: live block commit (also known as "snapshot deletion") moves data from an image to another in the backing file chain. With the current implementation of QEMU 1.3, the "source" image may not be the active one.
    A new block job is supported: live disk mirroring (also known as "storage migration") moves data from an image to another. A new command "block-job-complete" is used to switch the VM to use the destination image exclusively.
    Block jobs can now be paused and resumed from the monitor.
    NBD block devices can now be specified using URI syntax. "nbd://" defaults to TCP transport, while "nbd+tcp://" and "nbd+unix://" can be used (similar to Gluster) to specify it. URI syntax simplifies access to named exports; the export name is simply the "path" component of the URI.
    NBD connections to Unix sockets support relative paths.
    QEMU embeds an NBD server, accessible via the monitor. The NBD server allows live access to the image seen by the VM. Note that the embedded server uses "named exports", which QEMU can access using the "nbd://host:port/name" syntax.
    Windows hosts support asynchronous disk I/O.

Live Migration, Save/Restore
    The "stop" and "cont" commands have new semantics on the destination machine during migration. Previously, the outcome depended on whether the commands were issued before or after the source connected to the destination QEMU: in particular, "cont" would fail if issued before connection, and "undo" the effect of the -S command-line option if issued after. Starting from this version, the effect of "stop" and "cont" will always take place at the end of migration (overriding the presence or absence of the -S option) and "cont" will never fail. This change should be transparent, since the old behavior was usually subject to a race condition.
    The monitor now remains responsive during incoming migration. The new NBD server is also available during incoming migration.

Spice
    QEMU will only send changed screen content to the Spice client when running in legacy VGA mode.
    Seamless migration support.
    Composite QXL commands (for linux guests).
    Multiple monitors on a single pci device.
    Arbitrary resolution support.
    Device based monitor configuration notification (for future drivers).
    various bug fixes and assertion removals in favor of a guest_bug mode.
    require spice-server >= 0.12.0

KVM
    QEMU now supports "old-style" PCI device assignment, which was the last missing feature from the qemu-kvm fork. Despite some remaining minor differences between qemu-kvm and QEMU, it is possible to switch from qemu-kvm to QEMU as soon as your guests can be rebooted. Live migration from qemu-kvm 1.2 to QEMU 1.3 is not supported, but can be enabled easily by downstream distributions who want to switch their packages from qemu-kvm to QEMU.

Xen
    QEMU can now be used to live-migrate Xen domains.

SLIRP
    SLIRP's TFTP server has improved performance, can transmit files bigger than 32 MB, and supports the block size option.

Guest agent
    The guest agent will now store the state file in /var/run by default.

Host support
    SPARCv7 and v8 support was removed.

Build dependencies
    QEMU can now be built with Clang.
    QEMU now uses pixman. QEMU configure will detect and use a system pixman if the development headers are ailable (they should be available for most recent Linux distros). As a fallback, we provide an internal copy of the pixman sources which will be used if there is no set of system pixman libraries. Compiling these will require autoconf.
    Compiling QEMU ver 0.12 or better.
2013-01-24 17:52:01 +00:00
taca
7b56c4833c PKGREVISION should be simple integer value.
(It might be better to bump again.)
2013-01-16 05:44:49 +00:00
gdt
1d0c52a6ad Mark non-working on NetBSD 5.
Add NetBSD-5 to NOT_FOR_PLATFORM, due to
http://gnats.netbsd.org/46565.  Suggest qemu0 instead.
2013-01-15 15:17:22 +00:00
shattered
8f63ab6338 Pass correct path to smbd. 2012-10-26 16:08:18 +00:00
wiz
8b5d49eb78 Bump all packages that use perl, or depend on a p5-* package, or
are called p5-*.

I hope that's all of them.
2012-10-03 21:53:53 +00:00
asau
49d542f06c Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days. 2012-10-03 12:55:08 +00:00
sbd
3cc99ab385 Add the or32 user space emulator.
bump PKGREVISION
2012-09-26 10:42:48 +00:00
obache
c38c120ee5 recursive bump from libffi shlib major bump
(additionaly, reset PKGREVISION of qt4-* sub packages from base qt4 update)
2012-09-15 10:03:29 +00:00
adam
e8cd77f78b Fixed building on Darwin; fixed building with Clang; fixed some pkglint issues 2012-09-13 14:38:19 +00:00
asau
2e5d5d4b85 Update to QEMU 1.2.0
Changes since version 1.1.1:

System emulation

All targets

  * ... QMP error changes go here ...
  * File descriptors can be passed to qemu using the new
    add-fd/remove-fd QMP commands. It is intended that they can
    be used in any place where QEMU would expect a file name.
    This is ensured for disk images, support in other parts of
    QEMU may still be inconsistent.

ARM

  * LPAE (large physical address extensions) are now supported
    for the Cortex-A15 CPU; you can now run a vexpress-a15 model
    with more than 4GB of RAM
  * The new monitor command "dump-guest-memory" creates an ELF
    dump of the guest memory.
  * New board model: i.MX31

PowerPC

  * The pSeries target correctly creates segment size device
    tree nodes (fixes odd bugs with HV vs PR KVM)
  * The pSeries target implements an IOMMU.
  * ... pSeries VGA, USB, etc.? ...
  * The E500 target generates its device tree dynamically
  * New mpc8544ds -machine option: dumpdtb. This allows to dump
    the dynamically generated device tree to a file.
  * Emulation for e5500 cores
  * PC87312 Super I/O chipset emulation for PReP, adding
    parallel port to prep machine

x86

  * Support for PCI passthrough is available for Xen
    fully-virtualized domains.
  * The new monitor command "dump-guest-memory" creates an ELF
    dump of the guest memory.
  * When using KVM, the in-kernel APIC supports MSI.
  * Also when using KVM, new PV EOI feature improves performance
    when both host and guest run linux 3.6-rc1 and up. To
    enable, add +kvm_pv_eoi to -cpu option, e.g.

-cpu kvm64,+kvm_pv_eoi

  * The "cpudef" config file section is being deprecated and may
    be removed in v1.3.

Device emulation

  * VGA and QXL cards (obtained with -vga std and -vga qxl) have
    16 MB of VRAM rather than 8 MB.
  * Three new SCSI host bus adapter devices are available:
    am53c974 and dc390 emulate respectively an AMD PCI PCscsi
    and a Tekram DC-390 device, both of which are supported on
    older operating systems including MS DOS 6.2, MS Windows 3.11,
    98 SE, NT 3.1 and NT 4.0. megasas emulated an LSI SAS1078 RAID
    controller. The next version of SeaBIOS will support booting
    from am53c974 and dc390 disks.
  * An USB-attached SCSI controller is now available.

Audio devices

  * The PC speaker audio card is now available by default.

Network devices

  * The guestfwd argument to slirp now supports running an
    arbitrary command on every TCP connection (as in inetd).
    This is invoked by specifying a target that starts with "cmd:".

Block devices

  * Emulated IDE and SCSI as well as virtio-blk devices can now
    switch the cache mode between writethrough and writeback.
    virtio-blk automatically switches to writethrough if the
    guest driver doesn't support flushes.
  * The default cache mode for images is now writeback.
  * Emulated SCSI devices can be given a custom vendor name,
    product name and WWN.
  * Improved support for passthrough of SCSI tapes and media changers.
  * libiscsi can be used together with scsi-generic to pass
    iSCSI tapes and media changers to the guest.
  * When raw files are streamed, parts of the files that are
    holes in the underlying filesystem are treated as
    unallocated (as long as the OS supports either the FIEMAP
    ioctl or the SEEK_HOLE/SEEK_DATA modes)
  * CD-ROM drives can now be used with AHCI

qcow2

  * qcow2 images support a new option, lazy_refcounts. If on,
    the speed of cache=writethrough mode will be improved, at
    the cost of requiring an fsck-like pass (and thus QEMU 1.2)
    to use the image again after a power loss.
  * qemu-img check can now repair qcow2 and QED images with the
    new -r option.

VMDK

  * Support for images in the streamOptimized subformat has been
    fixed. This is a VMDK subformat commonly used with OVF appliances.

rbd

  * rbd no longer ignores the cache setting

Live Migration, Save/Restore

  * Migration works much better with guests with large memory.
  * USB mass storage and passthrough devices support live migration.

VNC

  * The threaded VNC server is now enabled by default.

Guest agent

  * A new command "fstrim" was added to the guest agent.

New targets

  * OpenRISC is now supported for both user-mode and system emulation.
2012-09-11 17:13:44 +00:00
asau
7cddbd72a2 Make it understand "-net tap,ifname=tap3" on NetBSD. 2012-08-03 17:51:47 +00:00
ryoon
9d967761f7 Update to 1.1.1.1
Changelog:
# System emulation
## All targets
* qdev properties of type hex8 and hex32 used to accept hexadecimal values not prefixed with "0x"; the prefix is mandatory starting with this version. These properties are: iobase, membase, io_base for all devices that support the properties; vram_size for sysbus-g364 and SUNW,tcx; version for sb16 and iommu; ctl_iobase and data_iobase for fw_cfg; readback for debugcon; elcr_addr and elcr_mask for i8259.
* PCI addresses can still be addressed with a pair of hexadecimal device and function without a "0x" prefix.
* -kernel, -initrd and -append are now aliases for suboptions of -machine (for example -machine kernel=foo), and as such they are also available with -readconfig.
* PCI-to-PCI bridges are supported [...]
* PCI emulation includes a standard hot-plug controller [...]
* The coroutine backend can now be configured using configure --with-coroutine=.... A new coroutine backend sigaltstack is available for platforms that don't support the default ucontext backend.
* Last but not least: the SDL user interface now uses the new QEMU icon.

## ARM
* The syborg machine type has been removed since the Symbian Virtual Platform is no longer relevant with the disbanding of Symbian.
* A device tree can be passed to the kernel using -dtb option (or alternatively -machine dtb=...).
* New 'nuri' and 'smdkc210' models of Samsung Exynos4210 based devboards.
* New 'highbank' model of the Calxeda Highbank.
* New 'vexpress-a15' model of the Versatile Express Cortex-A15.

## PowerPC
* The Bamboo machine now works with TCG, before only KVM was able to execute 440 code.
* Pseries handles PCI, allowing for virtio devices with -M pseries.
* Pseries works with PR KVM allowing for -M pseries -enable-kvm to work on G5s.
* We can now emulate e500mc cores, but no e500mc based board is emulated yet. You need to use -M mpc8544ds and a special guest kernel.
* Timers on ppc405 now work and don't segfault QEMU.

## S/390
* Added support to -kernel to allow booting of ELF binaries.
* Fixed -kernel to allow booting of newer guest kernels.
* Devices can now be hotplug add'ed (remove is not there yet).
* Rebooting a virtual machine now works.

## SPARC
* Added interrupt controller and support of vector interrupts.
* Fixed handling 32 bit instructions on a sparc64 CPU.
* Fixed block load instructions regression happened in 1.0 release.
* Fixed BCD mask in m48t59 emulation, so that Solaris 2.5.1 doesn't hang on sun4m emulation when day of month >21.
* Fixed initrd loading in qemu-system-sparc64.

## x86
* NMIs are correctly injected through the LAPIC (rather than sent directly to the guest CPU) and respect the LINT1 mask, thus fixing kdump.
* The -rtc-td-hack option is now available as a qdev property (-global mc146818rtc.lost_tick_policy=slew) and as such can be specified in a -readconfig configuration file.
* When the system is suspended to RAM, QEMU will now stop executing the guest until a wakeup event occurs. Implemented wakeup events include key presses, mouse button presses, RTC alarm, ACPI timer expiration, serial console input (off by default; enable with -global isa-serial.wakeup=1), and the system_wakeup monitor command.
* KVM can optionally use kernel-based emulation of the local APIC, IOAPIC, i8259 PIC and i8254 PIT. This is supported with the -machine ...,kernel_irqchip=on command-line option. MSI is not supported yet when using the kernel_irqchip option.
* Emulation of a PC System Flash device. The feature is enabled by adding a pflash drive. This feature is not supported when KVM is enabled. See Features/PC System Flash for more information.
* KVM guests support Hyper-V enlightenments. These are enabled by the -cpu features hv_spinlocks, hv_relaxed and hv_vapic.

## Device emulation
* The virtio-scsi device is now supported by QEMU. The guest driver will be supported in Linux starting at version 3.4.
* QEMU now includes experimental support for USB 3.0 (xHCI).
* Various improvement on the floppy emulation, most notably media change has been fixed

## Audio devices
* Audio devices can now use volume control capabilities exposed by the PulseAudio and Spice backends. (Note: all audio devices do not expose their volume control unless --enable-mixemu is turned on).

## Block devices
* QEMU's NBD client implementation and the qemu-nbd server both fully support asynchronous I/O.
* The rbd block driver supports the discard operation now
* The vpc block driver supports the Fixed Disk subformat of VHD images now
* The new QMP command transaction can be used to perform a set of multiple snapshots atomically, rolling back to the original images if there is a problem along the way. See Features/SnapshotsMultipleDevices for more information.
* The new monitor command block_stream lets guest copy data from the backing file to the current image while the guest is running. This lets users enables quick provisioning of new virtual machines using shared remote storage, and lets the guest transition incrementally to fast local storage. An alternative to streaming is the copy-on-read option of the -drive command-line option, which only transfers data when the guest needs it.
* An experimental extension of the qcow2 file format has been introduced. With the implementation as of QEMU 1.1, the most important addition is zero clusters, which allows image streaming and copy-on-read to leave images sparse if the backing file they are copying from is sparse. In order to enable the extension, use qemu-img create -f qcow2 -o compat=1.1 <filename> <size> for creating the image. Note that older versions of QEMU won't be able to read such images.
* I/O throttling is experimentally supported using the new -drive options bps/bps_rd/bps_wr/iops/iops_rd/iops_wr. It is expected to work with virtio-blk and IDE harddisks, but may lead to hangs when used with CD-ROM or floppy emulation or other devices.
* qemu-io supports new options to enable tracing and to choose a cache modes

## Network devices
* QEMU supports a new type of network device, bridge (used with -net bridge or -netdev bridge). The new type is similar to tap, but uses a helper program instead of a script to attach the device to a bridge. The helper program can then be installed as setuid. The helper program supports a simple ACL and configuration mechanism, see the commit message and feature page for documentation.

## Live Migration, Save/Restore
* Live migration (or save/restore) from QEMU releases prior to 0.13 to QEMU 1.1 is not supported.
* Live migration supports IPv6. IPv6 addresses can be expressed as tcp:host:port. Brackets around a numeric host address are required if a port is also specified, otherwise they can be omitted.

# Guest agent
* qemu-ga has been ported to Windows.
* Interfaces added for suspending guests to disk/ram, and retrieving information about network interfaces
* Interfaces for filesystem freeze have been hardened, and no longer depend on guest agent runtime state to determine whether a system is currently frozen.
* An easier to use reset mechanism has been added: guest-sync-delimited.

# Host support
* ARM hosts are now supported again (they were broken in 1.0).
* Sockets and SLIRP on Windows hosts was broken in 0.14 and works again.
* 64-bit Windows hosts are now supported.

# User-mode emulation
* User-mode emulation can provide some information from the /proc filesystem.
* On 64-bit hosts user-mode emulation now defaults to reserving 0xf7000000 bytes of address space for the guest. This significantly reduces the likelihood of QEMU having to fail a guest mmap() request when there is still memory available. This reservation can be overridden with the -R command line option.

# Testing
* A make check target has been implemented and runs some quick sanity tests
* qemu-iotests, which was previously hosted in an external git repository, has been merged into the QEMU source tree

# Build dependencies
* Building QEMU requires glib 2.12 on POSIX systems, and glib 2.20 on Win32 systems.
2012-07-23 11:17:54 +00:00
sbd
a3d9347177 Add PLIST.Linux with qemu-bridge-helper
Bump PKGREVISION.
2012-06-25 10:16:53 +00:00
sbd
d2e21e2e6b hw/usb/hcd_ehci.c will not compile with -O3 optimization so completely
remove it from CFLAGS.
2012-06-25 10:07:21 +00:00
sbd
9a0521a2a6 Set the correct location of texi2pod.pl 2012-06-25 09:43:51 +00:00
martin
951ba2740d Fix emulation of esp commands when not using dma. 2012-06-18 19:25:38 +00:00
ryoon
fd975aef7c Update to 1.1.0
* based on wip/qemu

Changelog:
1.1.0

System emulation
All targets

    qdev properties of type hex8 and hex32 used to accept hexadecimal values not prefixed with "0x"; the prefix is mandatory starting with this version. These properties are: iobase, membase, io_base for all devices that support the properties; vram_size for sysbus-g364 and SUNW,tcx; version for sb16 and iommu; ctl_iobase and data_iobase for fw_cfg; readback for debugcon; elcr_addr and elcr_mask for i8259.
    PCI addresses can still be addressed with a pair of hexadecimal device and function without a "0x" prefix.
    -kernel, -initrd and -append are now aliases for suboptions of -machine (for example -machine kernel=foo), and as such they are also available with -readconfig.
    PCI-to-PCI bridges are supported [...]
    PCI emulation includes a standard hot-plug controller [...]
    The coroutine backend can now be configured using configure --with-coroutine=.... A new coroutine backend sigaltstack is available for platforms that don't support the default ucontext backend.
    Last but not least: the SDL user interface now uses the new QEMU icon.

ARM

    The syborg machine type has been removed since the Symbian Virtual Platform is no longer relevant with the disbanding of Symbian.
    A device tree can be passed to the kernel using -dtb option (or alternatively -machine dtb=...).
    New 'nuri' and 'smdkc210' models of Samsung Exynos4210 based devboards.
    New 'highbank' model of the Calxeda Highbank.
    New 'vexpress-a15' model of the Versatile Express Cortex-A15.

PowerPC

    The Bamboo machine now works with TCG, before only KVM was able to execute 440 code.
    Pseries handles PCI, allowing for virtio devices with -M pseries.
    Pseries works with PR KVM allowing for -M pseries -enable-kvm to work on G5s.
    We can now emulate e500mc cores, but no e500mc based board is emulated yet. You need to use -M mpc8544ds and a special guest kernel.
    Timers on ppc405 now work and don't segfault QEMU.

S/390

    Added support to -kernel to allow booting of ELF binaries.
    Fixed -kernel to allow booting of newer guest kernels.
    Devices can now be hotplug add'ed (remove is not there yet).
    Rebooting a virtual machine now works.

SPARC

    Added interrupt controller and support of vector interrupts.
    Fixed handling 32 bit instructions on a sparc64 CPU.
    Fixed block load instructions regression happened in 1.0 release.
    Fixed BCD mask in m48t59 emulation, so that Solaris 2.5.1 doesn't hang on sun4m emulation when day of month >21.
    Fixed initrd loading in qemu-system-sparc64.

x86

    NMIs are correctly injected through the LAPIC (rather than sent directly to the guest CPU) and respect the LINT1 mask, thus fixing kdump.
    The -rtc-td-hack option is now available as a qdev property (-global mc146818rtc.lost_tick_policy=slew) and as such can be specified in a -readconfig configuration file.
    When the system is suspended to RAM, QEMU will now stop executing the guest until a wakeup event occurs. Implemented wakeup events include key presses, mouse button presses, RTC alarm, ACPI timer expiration, serial console input (off by default; enable with -global isa-serial.wakeup=1), and the system_wakeup monitor command.
    KVM can optionally use kernel-based emulation of the local APIC, IOAPIC, i8259 PIC and i8254 PIT. This is supported with the -machine ...,kernel_irqchip=on command-line option. MSI is not supported yet when using the kernel_irqchip option.
    Emulation of a PC System Flash device. The feature is enabled by adding a pflash drive. This feature is not supported when KVM is enabled. See Features/PC System Flash for more information.
    KVM guests support Hyper-V enlightenments. These are enabled by the -cpu features hv_spinlocks, hv_relaxed and hv_vapic.

Device emulation

    The virtio-scsi device is now supported by QEMU. The guest driver will be supported in Linux starting at version 3.4.
    QEMU now includes experimental support for USB 3.0 (xHCI).
    Various improvement on the floppy emulation, most notably media change has been fixed

Audio devices

    Audio devices can now use volume control capabilities exposed by the PulseAudio and Spice backends. (Note: all audio devices do not expose their volume control unless --enable-mixemu is turned on).

Block devices

    QEMU's NBD client implementation and the qemu-nbd server both fully support asynchronous I/O.
    The rbd block driver supports the discard operation now
    The vpc block driver supports the Fixed Disk subformat of VHD images now
    The new QMP command transaction can be used to perform a set of multiple snapshots atomically, rolling back to the original images if there is a problem along the way. See Features/SnapshotsMultipleDevices for more information.
    The new monitor command block_stream lets guest copy data from the backing file to the current image while the guest is running. This lets users enables quick provisioning of new virtual machines using shared remote storage, and lets the guest transition incrementally to fast local storage. An alternative to streaming is the copy-on-read option of the -drive command-line option, which only transfers data when the guest needs it.
    An experimental extension of the qcow2 file format has been introduced. With the implementation as of QEMU 1.1, the most important addition is zero clusters, which allows image streaming and copy-on-read to leave images sparse if the backing file they are copying from is sparse. In order to enable the extension, use qemu-img create -f qcow2 -o compat=1.1 <filename> <size> for creating the image. Note that older versions of QEMU won't be able to read such images.
    I/O throttling is experimentally supported using the new -drive options bps/bps_rd/bps_wr/iops/iops_rd/iops_wr. It is expected to work with virtio-blk and IDE harddisks, but may lead to hangs when used with CD-ROM or floppy emulation or other devices.
    qemu-io supports new options to enable tracing and to choose a cache modes

Network devices

    QEMU supports a new type of network device, bridge (used with -net bridge or -netdev bridge). The new type is similar to tap, but uses a helper program instead of a script to attach the device to a bridge. The helper program can then be installed as setuid. The helper program supports a simple ACL and configuration mechanism, see the commit message and feature page for documentation.

Live Migration, Save/Restore

    Live migration (or save/restore) from QEMU releases prior to 0.13 to QEMU 1.1 is not supported.
    Live migration supports IPv6. IPv6 addresses can be expressed as tcp:host:port. Brackets around a numeric host address are required if a port is also specified, otherwise they can be omitted.

Guest agent

    qemu-ga has been ported to Windows.
    Interfaces added for suspending guests to disk/ram, and retrieving information about network interfaces
    Interfaces for filesystem freeze have been hardened, and no longer depend on guest agent runtime state to determine whether a system is currently frozen.
    An easier to use reset mechanism has been added: guest-sync-delimited.

Host support

    ARM hosts are now supported again (they were broken in 1.0).
    Sockets and SLIRP on Windows hosts was broken in 0.14 and works again.
    64-bit Windows hosts are now supported.

User-mode emulation

    User-mode emulation can provide some information from the /proc filesystem.
    On 64-bit hosts user-mode emulation now defaults to reserving 0xf7000000 bytes of address space for the guest. This significantly reduces the likelihood of QEMU having to fail a guest mmap() request when there is still memory available. This reservation can be overridden with the -R command line option.

Testing

    A make check target has been implemented and runs some quick sanity tests
    qemu-iotests, which was previously hosted in an external git repository, has been merged into the QEMU source tree

Build dependencies

    Building QEMU requires glib 2.12 on POSIX systems, and glib 2.20 on Win32 systems.


Changelog:
1.0.1

* Version 1.0.1
* Merge branch 's390-1.0' of git://repo.or.cz/qemu/agraf
* Merge branch 'ppc-1.0' of git://repo.or.cz/qemu/agraf
* e1000: bounds packet size against buffer size
* s390: fix cpu hotplug / cpu activity on interrupts
* s390x: add TR function for EXECUTE
* pseries: Don't try to munmap() a malloc()ed TCE table
* pseries: Populate "/chosen/linux,stdout-path" in the FDT
* pseries: Add a routine to find a stable "default" vty and use it
* pseries: Emit device tree nodes in reg order
* kvm-ppc: halt secondary cpus when guest reset
* pseries: Fix array overrun bug in PCI code
* console: Fix segfault on screendump without VGA adapter
* Merge branch 'master' of ssh://git.qemu.org/pub/git/qemu-stable-1.0
* rbd: always set out parameter in qemu_rbd_snap_list
* Documentation: Add qemu-img -t parameter in man page
* qemu-img rebase: Fix for undersized backing files
* coroutine: switch per-thread free pool to a global pool
* qiov: prevent double free or use-after-free
* PPC: Fix linker scripts on ppc hosts
* target-sh4: ignore ocbp and ocbwb instructions
* usb-ohci: td.cbp incorrectly updated near page end
* usb-host: properly release port on unplug & exit
* usb-storage: cancel I/O on reset
* Fix parse of usb device description with multiple configurations
* pc: fix event_idx compatibility for virtio devices
* pc: add pc-0.15
* cris: Handle conditional stores on CRISv10
* configure: Enable build by default PIE / read-only relocation sections on OpenBSD amd64/i386.
* target-i386: fix cmpxchg instruction emulation
* hw/9pfs: Use the correct signed type for different variables
* hw/9pfs: replace iovec manipulation with QEMUIOVector
* hw/9pfs: Use the correct file descriptor in Fsdriver Callback
* hw/9pfs: Add qdev.reset callback for virtio-9p-pci device
* hw/9pfs: Reset server state during TVERSION
* hw/9pfs: use migration blockers to prevent live migration when virtfs export path is mounted
* hw/9pfs: Improve portability to older systems
* exec.c: Fix subpage memory access to RAM MemoryRegion
* malta: Fix regression (i8259 interrupts did not work)

General

    i386-softmmu is no longer named qemu but instead referred to as qemu-system-i386 for better consistency with other targets. A new tool is likely to be introduced that uses the qemu name so distributions are advised to not undo this change.
    QEMU now uses a separate thread for VCPU execution. This merges the biggest difference between the qemu-kvm tree and upstream QEMU.
    A new memory dispatch API has been added internally. A new monitor command "info mtree" can show the hierarchy of memory regions in the guest.
    QEMU now has a build dependency on glib and makes extensive use of glib.
    QEMU now can run on more hosts. Hosts without a native code generator can use the TCG interpreter (TCI). See Features/TCI for more information.

Block devices (disks)

    QEMU now supports I/O latency accounting in the monitor command "info blockstats".
    Errors are now tracked per device and are shown by the monitor command "info block".
    All image formats now support asynchronous operation. IDE and SCSI emulation will use this feature, while other devices (notably floppy and SD) will not.

IDE/ATAPI

    A large number of bugs were fixed regarding CD media change and tray locking.

SCSI

    Memory management errors could crash QEMU when scsi-disk encountered I/O errors. Many instances of this problem were fixed.
    The accuracy of error handling for SCSI emulation has been greatly improved.
    SCSI devices can now be addressed by channel, target (id) and LUN. Not all emulated HBAs will support this feature (in particular, the LSI controller will not).
    Block device pass through is now supported through a new scsi-block device. The scsi-block device works with block devices (like /dev/sda or /dev/sr0) rather than /dev/sgN devices, and is more efficient because it does not consume arbitrary amounts of memory when the guest does large data transfers.
    SCSI CD-ROMs now report media changed events.
    SCSI CD-ROMs now support DVD images.
    Bugfixes for IDE media change also apply to SCSI.
    SCSI devices now report a unit attention condition when the system is started or reset. This may cause problems with old firmware versions.

VDI

    Now supports discarded blocks in dynamically-sized images.

User-mode networking (SLIRP)

    SLIRP can process ARP replies and gratuitous ARP requests from the guest.

ARM

    QEMU now supports the new Cortex-A15 instructions in linux-user mode (via "-cpu any"): VFPv4 fused multiply-accumulate (VFMA, VFMS, VFNMA, VFNMS) and also integer division (UDIV, SDIV).
    The vexpress-a9, versatileab, versatilepb and realview-* boards now have audio support.
    QEMU is known not to work on ARM hosts in this release. (ARM target emulation is fine.)

pSeries

    sPAPR VIO devices can now be created with -device.

Xtensa

    QEMU now supports DC232b and FSF xtensa CPU cores.
    QEMU now supports sim (similar to Tensilica ISS) and LX60/LX110/LX200 machines.

Migration

    QEMU now supports live migration using image files like QCOW2 on shared storage
2012-06-07 21:23:45 +00:00
gson
1d3f55c61b When setting up an outgoing user mode networking TCP connection,
disable the Nagle algorithm in the host-side connection.  Either
the VM is already doing Nagle, in which case there is no point
in doing it twice, or it has chosen to disable it, in which case
we should respect that choice.  This change speeds up GDB remote
debugging over TCP over user mode networking by multiple orders
of magnitude.
2012-05-12 09:56:51 +00:00
obache
2cd654bab6 Bump PKGREVISION from default python to 2.7. 2012-03-15 11:53:20 +00:00
wiz
ee311e3b36 Recursive bump for pcre-8.30* (shlib major change) 2012-03-03 00:11:51 +00:00
sbd
c6e3f9871f Use the --mandir configure arg to set the manpage directory. 2012-02-09 22:53:36 +00:00
wiz
833922aab2 Revbump for
a) tiff update to 4.0 (shlib major change)
b) glib2 update 2.30.2 (adds libffi dependency to buildlink3.mk)

Enjoy.
2012-02-06 12:39:49 +00:00
jakllsch
af22643c2c Enable dependency on curl for http://-backed block devices.
Additionally qemu "curses" support wants terminfo support.
pkgrev++.
2012-01-25 17:22:33 +00:00
ryoon
bc663cb10f Update to 0.15.1
Changelog:
qed: fix use-after-free during l2 cache commit
sdl: Fix termination in -no-shutdown mode
Fix termination by signal with -no-shutdown
Add support for finding libpng via pkg-config.
Check for presence of compiler -pthread flag.
Allow overriding the location of Samba's smbd.
Fix linker scripts
Fix install(1) usage to be compatible with OpenBSD's install(1).
Fix qjson test of solidus encoding
configure: Copy test data to build directory
monitor: fix build breakage for !CONFIG_VNC
monitor: fix build breakage with --disable-vnc
Fix forcing multicast msgs to loopback on OpenBSD.
user: Restore debug usage message for '-d ?' in user mode emulation
2011-10-19 18:45:42 +00:00
ryoon
712e043bac Restore missing patches. It is my mistake.
* patch-aa is for tap detection bug.
* patch-bb is for build on NetBSD 4.

The patch-aa requires bump of PKGREVISION.

Pointed out by Sergey Svishchev in private e-mail.
2011-09-22 05:37:49 +00:00
ryoon
ab4ecc031d Enable PREFER_PKGSRC=yes for curses on DragonFly and Linux. 2011-09-12 10:59:15 +00:00
ryoon
a9338ea4ce Update to 0.15.0
* Many bug fixes and improvements
* Add LatticeMico32 and unicore32 targets are added.
* And many changes. See http://wiki.qemu.org/ChangeLog/0.15

Tested on NetBSD/i386 current, NetBSD/i386 5.1, DragonFly/i386 2.10.1,
and Gentoo Linux/i386.
2011-08-22 12:00:34 +00:00
ryoon
0cd2efbfd9 Add comment to patch. 2011-08-04 18:48:16 +00:00
ryoon
a73eb89685 * Remove obsolete comments from patch-ej.
* Add * to pointer to function.

No functional change.
Thanks for tsustui@
2011-08-04 12:20:54 +00:00
cheusov
87ebd55a48 resort share/qemu/vgabios.bin in PLIST. This fixes one pkglint warning 2011-07-31 09:55:09 +00:00
ryoon
bd26e91b14 Update to 0.14.1
* 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.
2011-07-11 09:57:18 +00:00
wiz
46321b67e8 Unlimit datasize, needed on NetBSD-4. From Robert Elz in PR 42899. 2011-04-05 08:38:00 +00:00
shattered
7ccd6c3da9 PR/44325 PR/42899 -- fix build on netbsd-4 2011-04-03 09:56:39 +00:00
tsutsui
b8146c6ef5 Fix botch in patch-ej rev 1.1. PR pkg/44680
Also note about change in rev 1.2.
2011-03-04 13:03:47 +00:00
wiz
20864283be Split off SDL dependency in a default-on (except for Darwin, as before)
"sdl" option.
2011-02-28 17:49:30 +00:00
adam
bd5e9b30da Fix building on Mac OS X (PR#43207) 2010-12-27 12:33:32 +00:00
tsutsui
495eb30677 Disable bsd-user binaries on NetBSD 5.x and prior for workaround.
i386 and x86_64 user emul binaries require newer binutils for PROVIDE_HIDDEN()
 http://git.qemu.org/qemu.git/commit/?id=845f2c2812d9ed24b36c02a3d06ee83aeafe8b49
but on NetBSD binutils-2.19 was enabled around 5.99.22:
 http://cvsweb.NetBSD.org/bsdweb.cgi/src/share/mk/bsd.own.mk#rev1.594
and qemu-0.13.0 build fails on NetBSD 5.1 and 5.0.2.

Note qemu, qemu-system-x86_64, and other non user binaries
(that would actually be required by most users) still work fine.
2010-11-20 14:37:42 +00:00
jmmv
b95bc03bb9 Properly deal with configuration files by respecting PKG_SYSCONFBASE.
Bump PKGREVISION to 1.
2010-11-09 10:37:12 +00:00
tsutsui
70eef6adba Update qemu to 0.13.0. PR pkg/43994
"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
2010-10-27 13:24:09 +00:00
wiz
1d5d031d53 regen distinfo for patch-ab. 2010-10-03 15:11:49 +00:00
tnn
94b9474bc9 Rework 2MB stack allocation in qemu-img which causes SEGV with our
default process limits. Bump PKGREVISION.
2010-10-01 08:32:35 +00:00
tsutsui
28b58f0341 Note that qemu-0.13.x will include e1000 fix in patch-ee. 2010-08-11 17:05:13 +00:00
tsutsui
fe0434228a Use common style comment and cleanup whitespace/TAB nits in pkgsrc patch. 2010-08-09 21:19:09 +00:00
tsutsui
935d24ba30 Whitespace nit. 2010-08-09 20:56:32 +00:00
tsutsui
8ed4aa3dcd Remove nbd from UE_ARCHS. It's not UE but a tool,
and handled in PLIST.nbd and PLIST_VARS lines.
2010-08-09 20:35:25 +00:00
tsutsui
d06a08df65 Remove obsolete workaround for PR/41007.
The audio.h confusion has been handled by SUBST_*.qaudio lines.
2010-08-09 20:28:32 +00:00
tsutsui
5472a962cc - remove obsolete SUBST_foo lines
- use less wildcard for SUBST_FILES.qaudio so that
  we won't miss valid "Nothing changed" warnings
2010-08-09 11:49:10 +00:00
tsutsui
a5e6d00fa2 Suppress (harmless) warnings caused by pkgsrc patches. 2010-08-09 11:46:39 +00:00
tnn
7a4d322c1b needs zlib 2010-06-16 18:31:27 +00:00
tsutsui
d3582fc320 Update qemu to 0.12.4. Okay'ed by wiz@, in PR pkg/43311 filed by me.
---
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.
2010-05-17 14:31:07 +00:00
gson
55c72cea51 Correct emulation of i386 cmpxchg instruction in the case where the
comparison outcome is unequal and the memory write causes a page
fault.  Fixes PR pkg/42158.
2010-04-25 12:55:41 +00:00
sbd
53f2b7c5fe Use PLIST_VARS for all the qemu _user_ space emulators (plus nbd) and turn
on those that are supported by each opsys.  This should make things easier
if more bsd/darwin user space emulators are added.

Bump PKGREVISION.

OK wiz@
2010-04-10 05:57:40 +00:00
tnn
8449a2831f Update to qemu-0.12.3.
Changes: assorted bugfixes
2010-02-27 23:21:13 +00:00
heinz
d653ce6a74 Added LICENSE information. 2010-01-24 17:11:17 +00:00
bouyer
5813000596 patch-aa: patch ported from sysutils/xentools3-hvm to make network interface
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.
2010-01-14 22:32:33 +00:00
asau
657c2d7d00 Update to qemu 0.11.1:
Changes in version 0.11.1:
  - fix I2C slave addressing (Juha RiihimæÖki)
  - Revert "vga: do not resize the screen on hw_invalidate" (Aurelien Jarno)
  - slirp: fix use-after-free (Mark McLoughlin)
  - Fix sparc.ld (Blue Swirl)
  - ELF codedump build failures (Laurent Desnogues)
  - kvm: Move KVM mp_state accessors to i386-specific code (Hollis Blanchard)
  - fix configure script with armv4l cpu (Laurent Desnogues)
  - net: disable draining tap queue in one go (Mark McLoughlin)
  - pcnet: Restart poll timer on pcnet_start (Jan Kiszka)
  - Sparc32: Fix lance (Blue Swirl)
  - mac99: fix segmentation fault on startup (Aurelien Jarno)
  - usb-linux.c: fix buffer overflow (Jim Paris)
  - ARM host: fix generated blocks linking (Laurent Desnogues)
  - qemu serial: lost tx irqs (affecting FreeBSD's new uart(4) driver (Juergen Lock)
  - exec-all.h: increase MAX_OP_PER_INSTR to 96 from 64 (Aurelien Jarno)
2009-12-09 18:28:39 +00:00
asau
46c1500e27 Update to qemu 0.11.0. With input from Hasso Tepper (Dragonfly).
Changes since previous package:

version 0.11.0
  - fix rtc polling mode (Bernhard Kauer)
  - qcow2: order concurrent aio requests (Kevin Wolf)
  - qemu-io: port to win32 (Stefan Weil)
  - alpha: fix extlh instruction (Vince Weaver)
  - tcg: fix size of local variables in tcg_gen_bswap64_i64 (Stefan Weil)
  - net: fix send ordering (Jan Kiszka)
  - escc: fix IRQ routing (Aurelien Jarno)
  - versatile: fix Linux task preemption (Aurelien Jarno)
  - curses: reduce memory usage by 250MB (Aurelien Jarno)

version 0.11.0-rc2
  - mips: fix conditional move off fp conditions codes (Nath Froyd)
  - fix migration to obey -S (Paolo Bonzini)
  - remove pc-0-10 machine type (Mark McLoughlin)
  - vnc: fix copyrect screen corruption (Gerd Hoffman)
  - fix vm state change handlers running order (Markus Armbruster)
  - e1000: fix eerc and ics emulation (Bill Paul)
  - fix sdl zooming with pl110 (Blue Swirl)
  - sparc64: flush pending conditional evaluations (Igor Kovalenko)
  - esp: fix interrupt register read (Blue Swirl)
  - option rom makefile fixes (Paul Brook)
  - fix sparse warnings (Blue Swirl)
  - fix symfind (Laurent Desnogues)
  - win32: fix default prefix (Stefan Weil)
  - fix checksum writing in signboot (Alex Graf)
  - fix sdl window resize (Stefano Stabellini)
  - do not resize the screen on hw_invalidate (Stefano Stabellini)
  - Add checks for -smbios option (Beth Kon)
  - fix do_set_link (Luiz Capitulino)
  - fix do_commit behavior (Luiz Capitulino)
  - make windows notice media change (Gleb Natapov)
  - check for PR_SET_NAME being defined (Nathan Froyd)
  - fix migration for ide devices (Anthony Liguori)
  - Use correct depth in vmware vga (Reimar Doffiner)
  - support 32bpp cursors in sdl (Reimar Doffinger)
  - fix device name completion for eject (Blue Swirl)
  - make screendump use DisplayState properly (Stefano Stabellini)
  - fix autostart with live migration (Avi Kivity)
  - fix detached migration with exec (Chris Lalancette)
  - fix segv when changing vnc password in sdl (Zach Amsden)
  - fix vnc password clearing with stdio monitor (Zach Amsden)
  - clean up VGA type selection (Zach Amsden)
  - add missing linefeed in error message (Stefan Weil)

version 0.11.0-rc1
  - add machine aliasing support (Mark McLoughlin)
  - add getfd/closefd monitor commands (Mark McLoughlin)
  - use correct headers for tap-win32 (Filip Navara)
  - fix live migration (Glauber Costa)
  - slirp: use monotonic clock if available (Ed Swierk)
  - clear msix_entries_nr on error (Michael Tsirkin)
  - HPET: fix reg writes (Beth Kon)
  - slirp: fix guestfwd for incoming data (Jan Kiszka)
  - fix build of qemu-thread.c on win32 (Sebastian Herbszt)
  - improve signrom.sh portability (Christoph Egger)
  - fix qemu-img convert to copy unallocated parts of the image
	(Akkarit Sangpetch)
  - vmdk: fix backing file handling (Kevin Wolf)
  - scsi: add save/restore support (Nolan Leake)
  - fix live migration for SCSI (Nolan Leake)
  - various sparc build fixes (Blue Swirl)
  - fix OpenBSD build (Blue Swirl)
  - only allow -cpu host when using KVM (Anthony Liguori)
  - fix build breakage when !KVM (Anthony Liguori)
2009-10-11 16:04:13 +00:00
tnn
f22dd43d5f The package's install target already installs manpages, no need for
us to do it manually anymore.
2009-09-22 12:18:33 +00:00
tnn
b2f7886cda fat-fingered that one ... 2009-08-31 14:49:21 +00:00
tnn
363397d83e we can use clock_gettime(2) instead of gettimeofday(2) on NetBSD too 2009-08-31 14:41:31 +00:00
tnn
67eaf34172 use mmap to allocate the VM memory as well 2009-08-31 14:34:07 +00:00
tnn
53aaa9b902 Use mmap to allocate executable memory on NetBSD as well.
Bump revision.
2009-08-31 14:30:50 +00:00
asau
811bb7045e Fix NetBSD build. Insert omitted "defined" in "defined(__Dragonfly__)". 2009-08-31 13:07:04 +00:00
hasso
09bd02022f Update to 0.10.6. Tested on DragonFly only.
version 0.10.6:
  - e1000: ignore reset command (Kevin Wolf)
  - fix VNC memory allocation (Stefan Weil)
  - fix raw_pread_aligned return value (Christoph Hellwig)
  - allow monitor interaction when using -incoming exec: (Chris Lalancette)
  - fix -net socket,listen (Jan Kiszka)
  - live migration: don't send gratuitous packets all at once (Gleb Natapov)
  - serial: fix lost characters after sysrq (Jason Wessel)
  - Fix prototype of zfree (Stefan Weil)
  - Handle EINTR with exec: migration (Uri Lublin)
  - Delete io-handler before closing fd after migration (Uri Lublin)
  - Fix qemu_aio_flush (Andrea Arcangeli)
  - lsi53c895a: Implement additional registers (Sebastian Herbszt)
  - virtio-blk: fix warning (Gerd Hoffman)
  - i386: fix cpu reset (Nitin Kamble)
  - kvm: fix irq injection into full queue (Jan Kiszka)
  - Prevent CD-ROM eject while device is locked (Mark McLoughlin)
  - Fix screen dump with blank screen (Eduardo Habkost)
  - Fix memory leak with cpu_unregister_map_client (Isaku Yamahata)
  - Fix memory leak in SDL (Jan Kiszka)
  - Fix build on OS X 10.4 (John Arbuckle)
  - Fix leak of vlan clients after hot remove (Mark McLoughlin)
  - Fix migration after hot remove with eepro100 (Mark McLoughlin)
  - Don't start a VM after failed migration if stopped (Anthony Liguori)
  - Fix live migration under heavy IO load (Glauber Costa)
  - Honor -S on incoming migration (Paolo Bonzini)
  - Reset HPET config register on reset (Beth Kon)
  - Reset PS2 keyboard/mouse on reset (Dinesh Subraveti)

version 0.10.5:
  - kvm: trim unsupported cpu features from cpuid (Avi Kivity)
  - kvm: provide a better error message for -smp > 1 (Mark McLoughlin)
  - Remove initrd printfs (Richard Jones)
  - Initial variables found by valgrind (Jean-Christophe Dubois)
  - Fix -initrd with > 4GB guests (Glauber Costa)
  - Fix busy loop on live migration for certain platforms (Uri Lublin)
  - Remove GCC 3.x requirements from docs (Hollis Blanchard)
  - ETRAX: fixes for kernel command line, ethernet address, bmi (Edgar Iglesias)
  - CRIS: Fix bmi (Edgar Iglesias)
  - Fix bounce buffer errors (Avi Kivity)
  - Fix regression in -kernel (Anthony Liguori)

version 0.10.4:
  - Improve block range checks to remove integer overflow (Kevin Wolf)
  - e1000: do not re-init PCI config space 0 (Amit Shah)
  - fix AIO deletion race (Alex Graf)
  - reset option roms on reboot (Glauber Costa)
  - fix qcow2 corruption in cluster freeing (Gleb Natapov)
  - Enable power button event generation (Gleb Natapov)

version 0.10.3:
  - fix AIO cancellations (Avi Kivity)
  - fix live migration error path on incoming
  - avoid SEGV on pci hotplug failure (Chris Wright)
  - fix serial option in -drive
  - support DDIM for option roms (Glauber Costa)
  - avoid fork/exec on pre-2.6.27 kernels with KVM (Jan Kiszka)
  - block-vpc: don't silently create smaller images than requested (Kevin Wolf)
  - Fix non-ACPI timer interrupt routing (Beth Kon)
  - hpet: fix emulation of HPET_TN_SETVAL (Jan Kiszka)
  - kvm: fix cpuid initialization (Jan Kiszka)
  - qcow2: fix corruption on little endian hosts (Kevin Wolf)
  - avoid leaing memory on hot unplug (Mark McLoughlin)
  - fix savevm/migration after hot unplug (Mark McLoughlin)
  - Fix keyboard mapping on newer Xords with non-default keymaps (balrog)
  - Make PCI config status register read-only (Anthony Liguori)
  - Fix crash on resolution change -> screen dump -> vga redraw (Avi Kivity)

version 0.10.2:

  - fix savevm/loadvm (Anthony Liguori)
  - live migration: fix dirty tracking windows (Glauber Costa)
  - live migration: improve error propogation (Glauber Costa)
  - qcow2: fix image creation for > ~2TB images (Chris Wright)
  - hotplug: fix error handling for if= parameter (Eduardo Habkost)
  - qcow2: fix data corruption (Nolan Leake)
  - virtio: fix guest oops with 2.6.25 kernels (Rusty Russell)
  - SH4: add support for -kernel (Takashi Yoshii, Aurelien Jarno)
  - hotplug: fix closing of char devices (Jan Kiszka)
  - hotplug: remove incorrect check for device name (Eduardo Habkost)
  - enable -k on win32 (Herve Poussineau)
  - configure: use LANG=C for grep (Andreas Faerber)
  - fix VGA regression (malc)

version 0.10.1:

  - virtio-net: allow masking of notifications on empty queue (Alex Williamson)
  - e1000: fix rx descriptor low threshold logic (Alex Willaimson)
  - x86 tcg: add NULL checks to lsl instruction (Jan Kiszka)
  - kvm vga: fix screen corruption with -std-vga and Windows (Avi Kivity)
  - kvm vga: fix screen corruption with Ubuntu installations (Glauber Costa)
  - virtio-net: check right return size on sg list (Alex Williamson)
  - Make qemu_announce_self handle holes (live migration after hotplug)
    (Marcelo Tosatti)
  - Revert r6804-r6808 (qcow2 allocation info).  This series of changes added
    a high cost to startup for large qcow2 images (Anthony Liguori)
  - qemu-img: fix help message (Aurelien Jarno)
  - Fix build for non-default installs of SDL (Anthony Liguori)
  - Fix race condition in env->interrupt_request.  When using TCG and a dynticks
    host timer, this condition could cause TCG to get stuck in an infinite
    loop (Aurelien Jarno)
  - Fix reading encrypted hard disk passwords during early startup (Jan Kiszka)
  - Fix encrypted disk reporting in 'info block' (Jan Kiszka)
  - Fix console size with tiny displays (MusicPal) (Jan Kiszka)
  - Improve error handling in bdrv_open2 (Jan Kiszka)
  - Avoid leaking data in mux'ed character devices (Jan Kiszka)
  - Fix initial character device reset (no banner in monitor) (Jan Kiszka)
  - Fix cpuid KVM crash on i386 host (Lubomir Rintel)
  - Fix SLES10sp2 installation by adding ISTAT1 register to LSI SCSI emulation
    (Ryan Harper)

version 0.10.0:

  - TCG support (No longer requires GCC 3.x)
  - Kernel Virtual Machine acceleration support
  - BSD userspace emulation
  - Bluetooth emulation and host passthrough support
  - GDB XML register description support
  - Intel e1000 emulation
  - HPET emulation
  - VirtIO paravirtual device support
  - Marvell 88w8618 / MusicPal emulation
  - Nokia N-series tablet emulation / OMAP2 processor emulation
  - PCI hotplug support
  - Live migration and new save/restore formats
  - Curses display support
  - qemu-nbd utility to mount supported block formats
  - Altivec support in PPC emulation and new firmware (OpenBIOS)
  - Multiple VNC clients are now supported
  - TLS encryption is now supported in VNC
  - MIPS Magnum R4000 machine (Hervé Poussineau)
  - Braille support (Samuel Thibault)
  - Freecom MusicPal system emulation (Jan Kiszka)
  - OMAP242x and Nokia N800, N810 machines (Andrzej Zaborowski)
  - EsounD audio driver (Frederick Reeve)
  - Gravis Ultrasound GF1 sound card (Tibor "TS" Schütz)
  - Many, many, bug fixes and new features
2009-08-31 10:18:49 +00:00
joerg
bacea7cad5 Remove @dirrm entries from PLISTs 2009-06-14 17:48:39 +00:00
kefren
14a5807a8f Fix from upstream for CVE-2008-2004
PKGREVISION=1
2009-05-13 19:02:18 +00:00
abs
258824ec89 Workaround for PR/41007 - ensure WRKSRC comes before any buildlinked
directories so we pickup our audio/audio.h. Cannot use CPPFLAGS for this.
    CFLAGS+= -I${WRKSRC}
2009-03-24 15:13:40 +00:00
jmmv
ba823ce1e4 Fix build problems; QEMU_TOOL seems to have disappeared, so check for
QEMU_IMG instead.  From Juergen Buchmueller in private mail.
2009-01-23 08:15:27 +00:00
jmmv
3a978315b3 Update to 0.9.1:
- TFTP booting from host directory (Anthony Liguori, Erwan Velu)
  - Tap device emulation for Solaris (Sittichai Palanisong)
  - Monitor multiplexing to several I/O channels (Jason Wessel)
  - ds1225y nvram support (Herve Poussineau)
  - CPU model selection support (J. Mayer, Paul Brook, Herve Poussineau)
  - Several Sparc fixes (Aurelien Jarno, Blue Swirl, Robert Reif)
  - MIPS 64-bit FPU support (Thiemo Seufer)
  - Xscale PDA emulation (Andrzej Zaborowski)
  - ColdFire system emulation (Paul Brook)
  - Improved SH4 support (Magnus Damm)
  - MIPS64 support (Aurelien Jarno, Thiemo Seufer)
  - Preliminary Alpha guest support (J. Mayer)
  - Read-only support for Parallels disk images (Alex Beregszaszi)
  - SVM (x86 virtualization) support (Alexander Graf)
  - CRIS emulation (Edgar E. Iglesias)
  - SPARC32PLUS execution support (Blue Swirl)
  - MIPS mipssim pseudo machine (Thiemo Seufer)
  - Strace for Linux userland emulation (Stuart Anderson, Thayne Harbaugh)
  - OMAP310 MPU emulation plus Palm T|E machine (Andrzej Zaborowski)
  - ARM v6, v7, NEON SIMD and SMP emulation (Paul Brook/CodeSourcery)
  - Gumstix boards: connex and verdex emulation (Thorsten Zitterell)
  - Intel mainstone II board emulation (Armin Kuster)
  - VMware SVGA II graphics card support (Andrzej Zaborowski)
2009-01-22 07:27:28 +00:00