summaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
authoradam <adam@pkgsrc.org>2013-08-16 21:20:11 +0000
committeradam <adam@pkgsrc.org>2013-08-16 21:20:11 +0000
commit6af8d0a650dd152bb3ebbe923aa27e50b7c007ed (patch)
treeebdbb3801449d8efcc420204cbf367b0496486e6 /emulators
parent679154675cdbe39d8f94b39b8710e7441555b630 (diff)
downloadpkgsrc-6af8d0a650dd152bb3ebbe923aa27e50b7c007ed.tar.gz
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...
Diffstat (limited to 'emulators')
-rw-r--r--emulators/qemu/Makefile6
-rw-r--r--emulators/qemu/PLIST3
-rw-r--r--emulators/qemu/distinfo21
-rw-r--r--emulators/qemu/patches/patch-et10
-rw-r--r--emulators/qemu/patches/patch-hw_net_etraxfs__eth.c4
-rw-r--r--emulators/qemu/patches/patch-include_qemu_thread-posix.h16
-rw-r--r--emulators/qemu/patches/patch-ioport.c34
-rw-r--r--emulators/qemu/patches/patch-memory.c24
-rw-r--r--emulators/qemu/patches/patch-net_tap-bsd.c13
-rw-r--r--emulators/qemu/patches/patch-user-exec.c12
-rw-r--r--emulators/qemu/patches/patch-util_qemu-thread-posix.c82
11 files changed, 37 insertions, 188 deletions
diff --git a/emulators/qemu/Makefile b/emulators/qemu/Makefile
index accf9516eba..7aafff9e9d6 100644
--- a/emulators/qemu/Makefile
+++ b/emulators/qemu/Makefile
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.112 2013/07/29 13:10:26 adam Exp $
+# $NetBSD: Makefile,v 1.113 2013/08/16 21:20:11 adam Exp $
-DISTNAME= qemu-1.5.2
+DISTNAME= qemu-1.6.0
CATEGORIES= emulators
MASTER_SITES= http://wiki.qemu.org/download/
EXTRACT_SUFX= .tar.bz2
@@ -26,13 +26,13 @@ BUILD_DEPENDS+= texi2html-[0-9]*:../../textproc/texi2html
.include "../../mk/bsd.prefs.mk"
-CONFIGURE_ENV+= mansuffix=/${PKGMANDIR}
CONFIGURE_ARGS+= --prefix=${PREFIX}
CONFIGURE_ARGS+= --interp-prefix=${PREFIX}/share/qemu
CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR}
CONFIGURE_ARGS+= --python=${PYTHONBIN}
CONFIGURE_ARGS+= --smbd=${PREFIX}/sbin/smbd
CONFIGURE_ARGS+= --mandir=${PREFIX}/${PKGMANDIR}
+CONFIGURE_ENV+= mansuffix=/${PKGMANDIR}
CONF_FILES= ${EGDIR}/target-x86_64.conf \
${PKG_SYSCONFDIR}/target-x86_64.conf
diff --git a/emulators/qemu/PLIST b/emulators/qemu/PLIST
index 0969926bab8..ebdd84511b6 100644
--- a/emulators/qemu/PLIST
+++ b/emulators/qemu/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.35 2013/07/09 17:00:58 tsutsui Exp $
+@comment $NetBSD: PLIST,v 1.36 2013/08/16 21:20:11 adam Exp $
${PLIST.alpha}bin/qemu-alpha
${PLIST.arm}bin/qemu-arm
${PLIST.armeb}bin/qemu-armeb
@@ -122,6 +122,7 @@ share/qemu/pxe-rtl8139.rom
share/qemu/pxe-virtio.rom
share/qemu/q35-acpi-dsdt.aml
share/qemu/qemu-icon.bmp
+share/qemu/qemu_logo_no_text.svg
share/qemu/s390-ccw.img
share/qemu/s390-zipl.rom
share/qemu/sgabios.bin
diff --git a/emulators/qemu/distinfo b/emulators/qemu/distinfo
index fbb781ed1a4..7f5f430c64e 100644
--- a/emulators/qemu/distinfo
+++ b/emulators/qemu/distinfo
@@ -1,18 +1,15 @@
-$NetBSD: distinfo,v 1.86 2013/07/29 13:10:26 adam Exp $
+$NetBSD: distinfo,v 1.87 2013/08/16 21:20:11 adam Exp $
-SHA1 (qemu-1.5.2.tar.bz2) = 932c04cdb227e1553c79a43bbf7552a433c815a9
-RMD160 (qemu-1.5.2.tar.bz2) = db8509d58d1cc461cca28f35e69efd7c0143be07
-Size (qemu-1.5.2.tar.bz2) = 11932902 bytes
+SHA1 (qemu-1.6.0.tar.bz2) = 5f754fc128aaafd0c7aee2204d453f4be1ac859e
+RMD160 (qemu-1.6.0.tar.bz2) = e9cd36df6cba757a37dd34b7889f3190e7b6f222
+Size (qemu-1.6.0.tar.bz2) = 12040196 bytes
SHA1 (patch-ef) = 871ccf29463dec1bd56d7f7808248c5b1af4d4d6
-SHA1 (patch-et) = bc96fbe2869042f9a77716cfe3c5342262e7b489
+SHA1 (patch-et) = 8c876c7ba134345c51f139fa93ea95bcd5146f5d
SHA1 (patch-hw_display_omap__dss.c) = af89754a9a078a5b52240473d85351bd447623c0
-SHA1 (patch-hw_net_etraxfs__eth.c) = a6ac71e3a2a605bbabc52792db1d063dcb7764c2
+SHA1 (patch-hw_net_etraxfs__eth.c) = 444c6f8a8ad26d9762bfc8a0672afbc7b858fc9d
SHA1 (patch-hw_net_xilinx__axienet.c) = 02461c2cd2985c352626e46ba93844606783460e
-SHA1 (patch-include_qemu_thread-posix.h) = 7722055df516a8bcd01d36ea0474d2bbfbe27eaa
-SHA1 (patch-ioport.c) = a1bb22c6e22c0b0f3acacfa2023f7b45463e0041
-SHA1 (patch-memory.c) = b18fa7273a52e387943062e03c90501c4d9b30f4
-SHA1 (patch-net_tap-bsd.c) = 8f97df5f23212d6b748786a4ab417520abc6b066
+SHA1 (patch-memory.c) = 4b0452da427c52c17ff4b9c38d2caace1c9ce939
+SHA1 (patch-net_tap-bsd.c) = b87c2af1e63fe7a345bff117ef58fc311763338c
SHA1 (patch-slirp_tcp__subr.c) = 430157ea8a92fe1d6fc4f1f22ea5530641315fe1
-SHA1 (patch-user-exec.c) = 41f8bfdd86cbaa974ceb91571a2b2293b9df5153
+SHA1 (patch-user-exec.c) = ba20197b7c1209357568817cc56d31f8aa5b1905
SHA1 (patch-util_hbitmap.c) = 372fcbad5272205cd354bc7760ead77e017b07d1
-SHA1 (patch-util_qemu-thread-posix.c) = 0f3ce555b4d1328a869a374bf58eee3bda320cc2
diff --git a/emulators/qemu/patches/patch-et b/emulators/qemu/patches/patch-et
index d7507e9e9ab..25345e7e293 100644
--- a/emulators/qemu/patches/patch-et
+++ b/emulators/qemu/patches/patch-et
@@ -1,8 +1,8 @@
-$NetBSD: patch-et,v 1.8 2013/07/09 17:00:58 tsutsui Exp $
+$NetBSD: patch-et,v 1.9 2013/08/16 21:20:11 adam Exp $
---- Makefile.orig 2013-06-26 21:47:29.000000000 +0000
+--- Makefile.orig 2013-08-15 19:56:23.000000000 +0000
+++ Makefile
-@@ -324,8 +324,9 @@ install-datadir:
+@@ -329,8 +329,9 @@ endif
install-confdir:
$(INSTALL_DIR) "$(DESTDIR)$(qemu_confdir)"
@@ -12,5 +12,5 @@ $NetBSD: patch-et,v 1.8 2013/07/09 17:00:58 tsutsui Exp $
+ $(INSTALL_DIR) "$(DESTDIR)$(egdir)"
+ $(INSTALL_DATA) $(SRC_PATH)/sysconfigs/target/target-x86_64.conf "$(DESTDIR)$(egdir)"
- install: all $(if $(BUILD_DOCS),install-doc) install-sysconfig install-datadir
- $(INSTALL_DIR) "$(DESTDIR)$(bindir)"
+ install: all $(if $(BUILD_DOCS),install-doc) install-sysconfig \
+ install-datadir install-localstatedir
diff --git a/emulators/qemu/patches/patch-hw_net_etraxfs__eth.c b/emulators/qemu/patches/patch-hw_net_etraxfs__eth.c
index f7444a542a0..2d3f3ae3ede 100644
--- a/emulators/qemu/patches/patch-hw_net_etraxfs__eth.c
+++ b/emulators/qemu/patches/patch-hw_net_etraxfs__eth.c
@@ -1,4 +1,4 @@
-$NetBSD: patch-hw_net_etraxfs__eth.c,v 1.1 2013/07/09 17:00:58 tsutsui Exp $
+$NetBSD: patch-hw_net_etraxfs__eth.c,v 1.2 2013/08/16 21:20:11 adam Exp $
Avoid conflicts with SSP read() macro in NetBSD's <ssp/unistd.h>
(PR lib/43832: ssp causes common names to be defines)
@@ -14,7 +14,7 @@ Avoid conflicts with SSP read() macro in NetBSD's <ssp/unistd.h>
} else {
bus->data = 0xffff;
}
-@@ -359,7 +359,7 @@ static void eth_validate_duplex(struct f
+@@ -364,7 +364,7 @@ static void eth_validate_duplex(struct f
int new_mm = 0;
phy = eth->mdio_bus.devs[eth->phyaddr];
diff --git a/emulators/qemu/patches/patch-include_qemu_thread-posix.h b/emulators/qemu/patches/patch-include_qemu_thread-posix.h
deleted file mode 100644
index 168289ff506..00000000000
--- a/emulators/qemu/patches/patch-include_qemu_thread-posix.h
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-include_qemu_thread-posix.h,v 1.1 2013/07/09 17:00:58 tsutsui Exp $
-
-make QemuSemaphore.count unsigned per comments on the qemu-devel mailing list:
-http://lists.nongnu.org/archive/html/qemu-devel/2013-07/msg00030.html
-
---- include/qemu/thread-posix.h.orig 2013-06-26 21:47:29.000000000 +0000
-+++ include/qemu/thread-posix.h
-@@ -15,7 +15,7 @@ struct QemuSemaphore {
- #if defined(__APPLE__) || defined(__NetBSD__)
- pthread_mutex_t lock;
- pthread_cond_t cond;
-- int count;
-+ unsigned int count;
- #else
- sem_t sem;
- #endif
diff --git a/emulators/qemu/patches/patch-ioport.c b/emulators/qemu/patches/patch-ioport.c
deleted file mode 100644
index d1b54bdff7b..00000000000
--- a/emulators/qemu/patches/patch-ioport.c
+++ /dev/null
@@ -1,34 +0,0 @@
-$NetBSD: patch-ioport.c,v 1.8 2013/07/09 17:00:58 tsutsui Exp $
-
-Avoid conflicts with SSP read() macro in NetBSD's <ssp/unistd.h>
-(PR lib/43832: ssp causes common names to be defines)
-
---- ioport.c.orig 2013-06-26 21:47:29.000000000 +0000
-+++ ioport.c
-@@ -183,7 +183,7 @@ static uint32_t ioport_readb_thunk(void
- IORange *ioport = opaque;
- uint64_t data;
-
-- ioport->ops->read(ioport, addr - ioport->base, 1, &data);
-+ (*ioport->ops->read)(ioport, addr - ioport->base, 1, &data);
- return data;
- }
-
-@@ -192,7 +192,7 @@ static uint32_t ioport_readw_thunk(void
- IORange *ioport = opaque;
- uint64_t data;
-
-- ioport->ops->read(ioport, addr - ioport->base, 2, &data);
-+ (*ioport->ops->read)(ioport, addr - ioport->base, 2, &data);
- return data;
- }
-
-@@ -201,7 +201,7 @@ static uint32_t ioport_readl_thunk(void
- IORange *ioport = opaque;
- uint64_t data;
-
-- ioport->ops->read(ioport, addr - ioport->base, 4, &data);
-+ (*ioport->ops->read)(ioport, addr - ioport->base, 4, &data);
- return data;
- }
-
diff --git a/emulators/qemu/patches/patch-memory.c b/emulators/qemu/patches/patch-memory.c
index 38340cdcd9f..c99ce8f9968 100644
--- a/emulators/qemu/patches/patch-memory.c
+++ b/emulators/qemu/patches/patch-memory.c
@@ -1,32 +1,16 @@
-$NetBSD: patch-memory.c,v 1.5 2013/07/09 17:00:58 tsutsui Exp $
+$NetBSD: patch-memory.c,v 1.6 2013/08/16 21:20:11 adam Exp $
Avoid conflicts with SSP read() macro in NetBSD's <ssp/unistd.h>
(PR lib/43832: ssp causes common names to be defines)
---- memory.c.orig 2013-06-26 21:47:29.000000000 +0000
+--- memory.c.orig 2013-08-15 19:56:23.000000000 +0000
+++ memory.c
-@@ -313,7 +313,7 @@ static void memory_region_read_accessor(
+@@ -404,7 +404,7 @@ static void memory_region_read_accessor(
if (mr->flush_coalesced_mmio) {
qemu_flush_coalesced_mmio_buffer();
}
- tmp = mr->ops->read(mr->opaque, addr, size);
+ tmp = (*mr->ops->read)(mr->opaque, addr, size);
+ trace_memory_region_ops_read(mr, addr, tmp, size);
*value |= (tmp & mask) << shift;
}
-
-@@ -396,12 +396,12 @@ static void memory_region_iorange_read(I
-
- *data = ((uint64_t)1 << (width * 8)) - 1;
- if (mrp) {
-- *data = mrp->read(mr->opaque, offset);
-+ *data = (*mrp->read)(mr->opaque, offset);
- } else if (width == 2) {
- mrp = find_portio(mr, offset - mrio->offset, 1, false);
- assert(mrp);
-- *data = mrp->read(mr->opaque, offset) |
-- (mrp->read(mr->opaque, offset + 1) << 8);
-+ *data = (*mrp->read)(mr->opaque, offset) |
-+ ((*mrp->read)(mr->opaque, offset + 1) << 8);
- }
- return;
- }
diff --git a/emulators/qemu/patches/patch-net_tap-bsd.c b/emulators/qemu/patches/patch-net_tap-bsd.c
index 10b319d4dad..87e158e6fb6 100644
--- a/emulators/qemu/patches/patch-net_tap-bsd.c
+++ b/emulators/qemu/patches/patch-net_tap-bsd.c
@@ -1,15 +1,14 @@
-$NetBSD: patch-net_tap-bsd.c,v 1.4 2013/07/09 17:00:58 tsutsui Exp $
+$NetBSD: patch-net_tap-bsd.c,v 1.5 2013/08/16 21:20:11 adam Exp $
Make it understand "-net tap,ifname=tap3" on NetBSD.
---- net/tap-bsd.c.orig 2013-06-26 21:47:29.000000000 +0000
+--- net/tap-bsd.c.orig 2013-08-15 19:56:23.000000000 +0000
+++ net/tap-bsd.c
-@@ -44,7 +44,7 @@ int tap_open(char *ifname, int ifname_si
- struct stat s;
+@@ -45,6 +45,7 @@ int tap_open(char *ifname, int ifname_si
#endif
--#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__OpenBSD__)
-+#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__OpenBSD__) || defined(__NetBSD__)
+ #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || \
++ defined(__NetBSD__) || \
+ defined(__OpenBSD__) || defined(__APPLE__)
/* if no ifname is given, always start the search from tap0/tun0. */
int i;
- char dname[100];
diff --git a/emulators/qemu/patches/patch-user-exec.c b/emulators/qemu/patches/patch-user-exec.c
index da690dfd127..81bd528ea8c 100644
--- a/emulators/qemu/patches/patch-user-exec.c
+++ b/emulators/qemu/patches/patch-user-exec.c
@@ -1,10 +1,10 @@
-$NetBSD: patch-user-exec.c,v 1.2 2013/07/09 17:00:58 tsutsui Exp $
+$NetBSD: patch-user-exec.c,v 1.3 2013/08/16 21:20:11 adam Exp $
Add OS dependent code for NetBSD/arm.
---- user-exec.c.orig 2013-06-26 21:47:30.000000000 +0000
+--- user-exec.c.orig 2013-08-15 19:56:23.000000000 +0000
+++ user-exec.c
-@@ -428,19 +428,31 @@ int cpu_signal_handler(int host_signum,
+@@ -434,19 +434,31 @@ int cpu_signal_handler(int host_signum,
#elif defined(__arm__)
@@ -33,6 +33,6 @@ Add OS dependent code for NetBSD/arm.
pc = uc->uc_mcontext.arm_pc;
#endif
+#endif
- /* XXX: compute is_write */
- is_write = 0;
- return handle_cpu_signal(pc, (unsigned long)info->si_addr,
+
+ /* error_code is the FSR value, in which bit 11 is WnR (assuming a v6 or
+ * later processor; on v5 we will always report this as a read).
diff --git a/emulators/qemu/patches/patch-util_qemu-thread-posix.c b/emulators/qemu/patches/patch-util_qemu-thread-posix.c
deleted file mode 100644
index 9b5aadd907c..00000000000
--- a/emulators/qemu/patches/patch-util_qemu-thread-posix.c
+++ /dev/null
@@ -1,82 +0,0 @@
-$NetBSD: patch-util_qemu-thread-posix.c,v 1.2 2013/07/09 17:00:58 tsutsui Exp $
-
-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=c166cb72f1676855816340666c3b618beef4b976
- - 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@, with minor update
-per comments on the qemu-devel mailing list:
-http://lists.nongnu.org/archive/html/qemu-devel/2013-07/msg00030.html
-
---- util/qemu-thread-posix.c.orig 2013-06-26 21:47:30.000000000 +0000
-+++ util/qemu-thread-posix.c
-@@ -170,12 +170,11 @@ void qemu_sem_post(QemuSemaphore *sem)
-
- #if defined(__APPLE__) || defined(__NetBSD__)
- pthread_mutex_lock(&sem->lock);
-- if (sem->count == INT_MAX) {
-+ if (sem->count == UINT_MAX) {
- rc = EINVAL;
-- } else if (sem->count++ < 0) {
-- rc = pthread_cond_signal(&sem->cond);
- } else {
-- rc = 0;
-+ sem->count++;
-+ rc = pthread_cond_signal(&sem->cond);
- }
- pthread_mutex_unlock(&sem->lock);
- if (rc != 0) {
-@@ -207,19 +206,21 @@ int qemu_sem_timedwait(QemuSemaphore *sem, int ms)
- struct timespec ts;
-
- #if defined(__APPLE__) || defined(__NetBSD__)
-+ rc = 0;
- compute_abs_deadline(&ts, ms);
- pthread_mutex_lock(&sem->lock);
-- --sem->count;
-- while (sem->count < 0) {
-+ while (sem->count == 0) {
- rc = pthread_cond_timedwait(&sem->cond, &sem->lock, &ts);
- if (rc == ETIMEDOUT) {
-- ++sem->count;
- break;
- }
- if (rc != 0) {
- error_exit(rc, __func__);
- }
- }
-+ if (rc != ETIMEDOUT) {
-+ --sem->count;
-+ }
- pthread_mutex_unlock(&sem->lock);
- return (rc == ETIMEDOUT ? -1 : 0);
- #else
-@@ -249,16 +250,19 @@ int qemu_sem_timedwait(QemuSemaphore *sem, int ms)
-
- void qemu_sem_wait(QemuSemaphore *sem)
- {
-+ int rc;
-+
- #if defined(__APPLE__) || defined(__NetBSD__)
- pthread_mutex_lock(&sem->lock);
-- --sem->count;
-- while (sem->count < 0) {
-- pthread_cond_wait(&sem->cond, &sem->lock);
-+ while (sem->count == 0) {
-+ rc = pthread_cond_wait(&sem->cond, &sem->lock);
-+ if (rc != 0) {
-+ error_exit(rc, __func__);
-+ }
- }
-+ --sem->count;
- pthread_mutex_unlock(&sem->lock);
- #else
-- int rc;
--
- do {
- rc = sem_wait(&sem->sem);
- } while (rc == -1 && errno == EINTR);