head 1.4; access; symbols pkgsrc-2013Q2:1.4.0.10 pkgsrc-2013Q2-base:1.4 pkgsrc-2012Q4:1.4.0.8 pkgsrc-2012Q4-base:1.4 pkgsrc-2011Q4:1.4.0.6 pkgsrc-2011Q4-base:1.4 pkgsrc-2011Q2:1.4.0.4 pkgsrc-2011Q2-base:1.4 pkgsrc-2009Q4:1.4.0.2 pkgsrc-2009Q4-base:1.4 pkgsrc-2009Q2:1.3.0.32 pkgsrc-2009Q2-base:1.3 pkgsrc-2009Q1:1.3.0.30 pkgsrc-2009Q1-base:1.3 pkgsrc-2008Q4:1.3.0.28 pkgsrc-2008Q4-base:1.3 pkgsrc-2008Q3:1.3.0.26 pkgsrc-2008Q3-base:1.3 cube-native-xorg:1.3.0.24 cube-native-xorg-base:1.3 pkgsrc-2008Q2:1.3.0.22 pkgsrc-2008Q2-base:1.3 cwrapper:1.3.0.20 pkgsrc-2008Q1:1.3.0.18 pkgsrc-2008Q1-base:1.3 pkgsrc-2007Q4:1.3.0.16 pkgsrc-2007Q4-base:1.3 pkgsrc-2007Q3:1.3.0.14 pkgsrc-2007Q3-base:1.3 pkgsrc-2007Q2:1.3.0.12 pkgsrc-2007Q2-base:1.3 pkgsrc-2007Q1:1.3.0.10 pkgsrc-2007Q1-base:1.3 pkgsrc-2006Q4:1.3.0.8 pkgsrc-2006Q4-base:1.3 pkgsrc-2006Q3:1.3.0.6 pkgsrc-2006Q3-base:1.3 pkgsrc-2006Q2:1.3.0.4 pkgsrc-2006Q2-base:1.3 pkgsrc-2006Q1:1.3.0.2 pkgsrc-2006Q1-base:1.3 pkgsrc-2005Q4:1.1.0.2 pkgsrc-2005Q4-base:1.1; locks; strict; comment @# @; 1.4 date 2009.08.31.10.18.49; author hasso; state dead; branches; next 1.3; 1.3 date 2006.01.06.09.17.03; author xtraeme; state Exp; branches; next 1.2; 1.2 date 2006.01.01.13.48.45; author xtraeme; state dead; branches; next 1.1; 1.1 date 2005.11.04.21.09.15; author dbj; state Exp; branches; next ; desc @@ 1.4 log @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 @ text @$NetBSD: patch-ax,v 1.3 2006/01/06 09:17:03 xtraeme Exp $ --- target-i386/op.c.orig 2006-01-06 05:10:30.000000000 +0100 +++ target-i386/op.c @@@@ -2099,14 +2099,17 @@@@ void OPPROTO op_fdivr_STN_ST0(void) } /* misc FPU operations */ + +void fchs_dummy() {ST0 = floatx_chs(ST0);} void OPPROTO op_fchs_ST0(void) { - ST0 = floatx_chs(ST0); + fchs_dummy(); } +void fabs_dummy() {ST0 = floatx_abs(ST0);} void OPPROTO op_fabs_ST0(void) { - ST0 = floatx_abs(ST0); + fabs_dummy(); } void OPPROTO op_fxam_ST0(void) @ 1.3 log @Apply patches from Tobyas Nigren (PR pkg/32464) to make this build on NetBSD/amd64. Thank you Tobias! @ text @d1 1 a1 1 $NetBSD$ @ 1.2 log @Update to 0.8.0 (update provided by Hubert Feyrer, thanks :-) * Support for ARM Integrator/CP board system emulation. * Support for MIPS R4K system emulation. * Initial SMP support on x86 (up to 255 CPUs !). * Many new audio emulation features. * Initial USB support. * New networking options for VLAN support between several QEMU instances. @ text @d1 1 a1 1 $NetBSD: patch-ax,v 1.1 2005/11/04 21:09:15 dbj Exp $ d3 22 a24 164 --- /dev/null 2005-10-13 14:41:11.000000000 -0400 +++ fakepoll.h @@@@ -0,0 +1,161 @@@@ +// fakepoll.h +// poll using select +// Warning: a call to this poll() takes about 4K of stack space. + +// Greg Parker gparker-web@@sealiesoftware.com December 2000 +// This code is in the public domain and may be copied or modified without +// permission. + +// Updated May 2002: +// * fix crash when an fd is less than 0 +// * set errno=EINVAL if an fd is greater or equal to FD_SETSIZE +// * don't set POLLIN or POLLOUT in revents if it wasn't requested +// in events (only happens when an fd is in the poll set twice) + +#ifndef _FAKE_POLL_H +#define _FAKE_POLL_H + +#include +#define FD_SETSIZE OPEN_MAX +#include +#include +#include +#include + +typedef struct pollfd { + int fd; /* file desc to poll */ + short events; /* events of interest on fd */ + short revents; /* events that occurred on fd */ +} pollfd_t; + + +// poll flags +#define POLLIN 0x0001 +#define POLLOUT 0x0004 +#define POLLERR 0x0008 + +// synonyms +#define POLLNORM POLLIN +#define POLLPRI POLLIN +#define POLLRDNORM POLLIN +#define POLLRDBAND POLLIN +#define POLLWRNORM POLLOUT +#define POLLWRBAND POLLOUT + +// ignored +#define POLLHUP 0x0010 +#define POLLNVAL 0x0020 + +inline int poll(struct pollfd *pollSet, int pollCount, int pollTimeout) +{ + struct timeval tv; + struct timeval *tvp; + fd_set readFDs, writeFDs, exceptFDs; + fd_set *readp, *writep, *exceptp; + struct pollfd *pollEnd, *p; + int selected; + int result; + int maxFD; + + if (!pollSet) { + pollEnd = NULL; + readp = NULL; + writep = NULL; + exceptp = NULL; + maxFD = 0; + } + else { + pollEnd = pollSet + pollCount; + readp = &readFDs; + writep = &writeFDs; + exceptp = &exceptFDs; + + FD_ZERO(readp); + FD_ZERO(writep); + FD_ZERO(exceptp); + + // Find the biggest fd in the poll set + maxFD = 0; + for (p = pollSet; p < pollEnd; p++) { + if (p->fd > maxFD) maxFD = p->fd; + } + + if (maxFD >= FD_SETSIZE) { + // At least one fd is too big + errno = EINVAL; + return -1; + } + + // Transcribe flags from the poll set to the fd sets + for (p = pollSet; p < pollEnd; p++) { + if (p->fd < 0) { + // Negative fd checks nothing and always reports zero + } else { + if (p->events & POLLIN) FD_SET(p->fd, readp); + if (p->events & POLLOUT) FD_SET(p->fd, writep); + if (p->events != 0) FD_SET(p->fd, exceptp); + // POLLERR is never set coming in; poll() always reports errors + // But don't report if we're not listening to anything at all. + } + } + } + + // poll timeout is in milliseconds. Convert to struct timeval. + // poll timeout == -1 : wait forever : select timeout of NULL + // poll timeout == 0 : return immediately : select timeout of zero + if (pollTimeout >= 0) { + tv.tv_sec = pollTimeout / 1000; + tv.tv_usec = (pollTimeout % 1000) * 1000; + tvp = &tv; + } else { + tvp = NULL; + } + + + selected = select(maxFD+1, readp, writep, exceptp, tvp); + + + if (selected < 0) { + // Error during select + result = -1; + } + else if (selected > 0) { + // Select found something + // Transcribe result from fd sets to poll set. + // Also count the number of selected fds. poll returns the + // number of ready fds; select returns the number of bits set. + int polled = 0; + for (p = pollSet; p < pollEnd; p++) { + p->revents = 0; + if (p->fd < 0) { + // Negative fd always reports zero + } else { + if ((p->events & POLLIN) && FD_ISSET(p->fd, readp)) { + p->revents |= POLLIN; + } + if ((p->events & POLLOUT) && FD_ISSET(p->fd, writep)) { + p->revents |= POLLOUT; + } + if ((p->events != 0) && FD_ISSET(p->fd, exceptp)) { + p->revents |= POLLERR; + } + + if (p->revents) polled++; + } + } + result = polled; + } + else { + // selected == 0, select timed out before anything happened + // Clear all result bits and return zero. + for (p = pollSet; p < pollEnd; p++) { + p->revents = 0; + } + result = 0; + } + + return result; +} + + +#endif @ 1.1 log @use fakepoll.h implementation of poll using select on apple, which has a broken poll. @ text @d1 1 a1 1 $NetBSD$ @