Update qemu to 2007-01-11 snapshot:

- add slirp udp fix
  [this should fix the dns problems with some guests]
- document slirp problems on recent -current (I don't have a -current box
  so if someone wants to help debug this you are most welcome!)
- memsave monitor command
- Dynamic handling of guest mice, by Lonnie Mendez.
- PPC32 Trace Exception and Trap instruction, by Jason Wessel.
- Add -option-rom option to allow loading of PCI option ROMs, by
  Anthony Liguori.
- Add -boot n option for x86 using PXE, by Anthony Liguori.
  [for use with tuntap]
- Support for Bochs "growing" images, by Volker Ruppert.
- Japanese keyboard patch (kazu)
- Revert -disk patch, as requested by Fabrice. The general idea of this
  patch is sound, but the implementation is just too ugly.
  [this should fix the hanging linux guests]
- Devfn number for the PIIX3 southbridge, by Aurelien Jarno.
- Increase MIPS BIOS from 128kB to 4MB, by Aurelien Jarno.
- And some more bugfixes.

Approved by:	miwi (mentor)
This commit is contained in:
Juergen Lock 2007-01-12 00:13:58 +00:00
parent 7bec77c8f7
commit 8598b8520e
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=182127
16 changed files with 86 additions and 38 deletions

View File

@ -6,8 +6,7 @@
#
PORTNAME= qemu
PORTVERSION= 0.8.2s.20061225
PORTREVISION= 1
PORTVERSION= 0.8.2s.20070111
CATEGORIES= emulators
MASTER_SITES= http://www.qemu.org/:release \
http://qemu-forum.ipi.fi/qemu-snapshots/:snapshot \
@ -15,7 +14,7 @@ MASTER_SITES= http://www.qemu.org/:release \
http://www.volny.cz/xnavara/qemu/:snapshot \
http://people.brandeis.edu/~jcoiner/qemu_idedma/:idedma \
http://people.freebsd.org/~maho/qemu/:misc
DISTNAME= ${PORTNAME}-snapshot-2006-12-25_05
DISTNAME= ${PORTNAME}-snapshot-2007-01-11_05
DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:snapshot
DIST_SUBDIR= qemu
EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}

View File

@ -1,6 +1,6 @@
MD5 (qemu/qemu-snapshot-2006-12-25_05.tar.bz2) = 2d1b1ab8d36467e5d4b6b382516273b8
SHA256 (qemu/qemu-snapshot-2006-12-25_05.tar.bz2) = 98c2f8a4f629b59d40ad09a168dc546927a3c70ea14a8d35e82456cfd9e726d2
SIZE (qemu/qemu-snapshot-2006-12-25_05.tar.bz2) = 1507659
MD5 (qemu/qemu-snapshot-2007-01-11_05.tar.bz2) = 6b183198ea932853664edbff595579c7
SHA256 (qemu/qemu-snapshot-2007-01-11_05.tar.bz2) = 4020ae33a58fba1a205c77a70fce21ba8e1843adcb8bedcabfbc7f84c53b35a1
SIZE (qemu/qemu-snapshot-2007-01-11_05.tar.bz2) = 1576375
MD5 (qemu/patch3_cirrus) = ebe7ed9fce804c49e024bc93bfdfc810
SHA256 (qemu/patch3_cirrus) = e862371834b7d895a896fbdb84fd9f70d17b5729a6f6789a48a61504fc941e11
SIZE (qemu/patch3_cirrus) = 8817

View File

@ -1,9 +0,0 @@
Index: qemu/Makefile.target
@@ -18,6 +18,7 @@
DEFINES+=-I$(SRC_PATH)/linux-user -I$(SRC_PATH)/linux-user/$(TARGET_ARCH)
endif
CFLAGS=-Wall -O2 -g -fno-strict-aliasing
+CFLAGS+=-I${LOCALBASE}/include
#CFLAGS+=-Werror
LDFLAGS=-g
LIBS=

View File

@ -3,8 +3,8 @@ Index: qemu/Makefile.target
#########################################################
-DEFINES+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
+DEFINES+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DSMBD_COMMAND=\"${LOCALBASE}/sbin/smbd\"
-CPPFLAGS+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
+CPPFLAGS+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DSMBD_COMMAND=\"${LOCALBASE}/sbin/smbd\" -I${LOCALBASE}/include
LIBS+=-lm
ifndef CONFIG_USER_ONLY
LIBS+=-lz

View File

@ -1,9 +1,11 @@
Index: qemu/block-raw.c
@@ -51,7 +51,7 @@
@@ -51,7 +51,10 @@
#include <linux/cdrom.h>
#include <linux/fd.h>
#endif
-#ifdef __FreeBSD__
#ifdef __FreeBSD__
+#include <signal.h>
+#endif
+#if defined(__FreeBSD__) && __FreeBSD__ > 4
#include <sys/disk.h>
#endif

View File

@ -0,0 +1,26 @@
Index: qemu/slirp/udp.c
@@ -205,8 +208,6 @@
/* udp_last_so = so; */
so->so_laddr = ip->ip_src;
so->so_lport = uh->uh_sport;
- so->so_faddr = ip->ip_dst; /* XXX */
- so->so_fport = uh->uh_dport; /* XXX */
if ((so->so_iptos = udp_tos(so)) == 0)
so->so_iptos = ip->ip_tos;
@@ -216,6 +217,15 @@
* and if it is, do the fork_exec() etc.
*/
}
+
+ /*
+ * Assign destination unconditionally
+ *
+ * This fixes the case where packets are sent from the same
+ * source ip/port to different destination ips/ports
+ */
+ so->so_faddr = ip->ip_dst; /* XXX */
+ so->so_fport = uh->uh_dport; /* XXX */
iphlen += sizeof(struct udphdr);
m->m_len -= iphlen;

View File

@ -63,6 +63,9 @@ with qemu's now by default enabled cdrom dma. You can build the port with
CDROM_DMA disabled to disable it.
- if you build qemu wihout SDL and then get crashes running it try
passing it -nographic. This should probably be default in that case...
- slirp (-net user) seems to be broken on recent -current, if this affects
you please use tuntap for now. (or better yet, help with debugging as I
don't have a -current box...)
- qemu now uses aio at least for ide dma, so if you get `Bad system call'
crashes that is because aio is not (kld)loaded.
====

View File

@ -16,6 +16,9 @@ bin/qemu-system-x86_64
%%DATADIR%%/ppc_rom.bin
%%DATADIR%%/openbios-sparc32
%%DATADIR%%/video.x
%%DATADIR%%/pxe-ne2k_pci.bin
%%DATADIR%%/pxe-rtl8139.bin
%%DATADIR%%/pxe-pcnet.bin
%%DATADIR%%/keymaps/ar
%%DATADIR%%/keymaps/common
%%DATADIR%%/keymaps/da

View File

@ -6,8 +6,7 @@
#
PORTNAME= qemu
PORTVERSION= 0.8.2s.20061225
PORTREVISION= 1
PORTVERSION= 0.8.2s.20070111
CATEGORIES= emulators
MASTER_SITES= http://www.qemu.org/:release \
http://qemu-forum.ipi.fi/qemu-snapshots/:snapshot \
@ -15,7 +14,7 @@ MASTER_SITES= http://www.qemu.org/:release \
http://www.volny.cz/xnavara/qemu/:snapshot \
http://people.brandeis.edu/~jcoiner/qemu_idedma/:idedma \
http://people.freebsd.org/~maho/qemu/:misc
DISTNAME= ${PORTNAME}-snapshot-2006-12-25_05
DISTNAME= ${PORTNAME}-snapshot-2007-01-11_05
DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:snapshot
DIST_SUBDIR= qemu
EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}

View File

@ -1,6 +1,6 @@
MD5 (qemu/qemu-snapshot-2006-12-25_05.tar.bz2) = 2d1b1ab8d36467e5d4b6b382516273b8
SHA256 (qemu/qemu-snapshot-2006-12-25_05.tar.bz2) = 98c2f8a4f629b59d40ad09a168dc546927a3c70ea14a8d35e82456cfd9e726d2
SIZE (qemu/qemu-snapshot-2006-12-25_05.tar.bz2) = 1507659
MD5 (qemu/qemu-snapshot-2007-01-11_05.tar.bz2) = 6b183198ea932853664edbff595579c7
SHA256 (qemu/qemu-snapshot-2007-01-11_05.tar.bz2) = 4020ae33a58fba1a205c77a70fce21ba8e1843adcb8bedcabfbc7f84c53b35a1
SIZE (qemu/qemu-snapshot-2007-01-11_05.tar.bz2) = 1576375
MD5 (qemu/patch3_cirrus) = ebe7ed9fce804c49e024bc93bfdfc810
SHA256 (qemu/patch3_cirrus) = e862371834b7d895a896fbdb84fd9f70d17b5729a6f6789a48a61504fc941e11
SIZE (qemu/patch3_cirrus) = 8817

View File

@ -1,9 +0,0 @@
Index: qemu/Makefile.target
@@ -18,6 +18,7 @@
DEFINES+=-I$(SRC_PATH)/linux-user -I$(SRC_PATH)/linux-user/$(TARGET_ARCH)
endif
CFLAGS=-Wall -O2 -g -fno-strict-aliasing
+CFLAGS+=-I${LOCALBASE}/include
#CFLAGS+=-Werror
LDFLAGS=-g
LIBS=

View File

@ -3,8 +3,8 @@ Index: qemu/Makefile.target
#########################################################
-DEFINES+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
+DEFINES+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DSMBD_COMMAND=\"${LOCALBASE}/sbin/smbd\"
-CPPFLAGS+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
+CPPFLAGS+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DSMBD_COMMAND=\"${LOCALBASE}/sbin/smbd\" -I${LOCALBASE}/include
LIBS+=-lm
ifndef CONFIG_USER_ONLY
LIBS+=-lz

View File

@ -1,9 +1,11 @@
Index: qemu/block-raw.c
@@ -51,7 +51,7 @@
@@ -51,7 +51,10 @@
#include <linux/cdrom.h>
#include <linux/fd.h>
#endif
-#ifdef __FreeBSD__
#ifdef __FreeBSD__
+#include <signal.h>
+#endif
+#if defined(__FreeBSD__) && __FreeBSD__ > 4
#include <sys/disk.h>
#endif

View File

@ -0,0 +1,26 @@
Index: qemu/slirp/udp.c
@@ -205,8 +208,6 @@
/* udp_last_so = so; */
so->so_laddr = ip->ip_src;
so->so_lport = uh->uh_sport;
- so->so_faddr = ip->ip_dst; /* XXX */
- so->so_fport = uh->uh_dport; /* XXX */
if ((so->so_iptos = udp_tos(so)) == 0)
so->so_iptos = ip->ip_tos;
@@ -216,6 +217,15 @@
* and if it is, do the fork_exec() etc.
*/
}
+
+ /*
+ * Assign destination unconditionally
+ *
+ * This fixes the case where packets are sent from the same
+ * source ip/port to different destination ips/ports
+ */
+ so->so_faddr = ip->ip_dst; /* XXX */
+ so->so_fport = uh->uh_dport; /* XXX */
iphlen += sizeof(struct udphdr);
m->m_len -= iphlen;

View File

@ -63,6 +63,9 @@ with qemu's now by default enabled cdrom dma. You can build the port with
CDROM_DMA disabled to disable it.
- if you build qemu wihout SDL and then get crashes running it try
passing it -nographic. This should probably be default in that case...
- slirp (-net user) seems to be broken on recent -current, if this affects
you please use tuntap for now. (or better yet, help with debugging as I
don't have a -current box...)
- qemu now uses aio at least for ide dma, so if you get `Bad system call'
crashes that is because aio is not (kld)loaded.
====

View File

@ -16,6 +16,9 @@ bin/qemu-system-x86_64
%%DATADIR%%/ppc_rom.bin
%%DATADIR%%/openbios-sparc32
%%DATADIR%%/video.x
%%DATADIR%%/pxe-ne2k_pci.bin
%%DATADIR%%/pxe-rtl8139.bin
%%DATADIR%%/pxe-pcnet.bin
%%DATADIR%%/keymaps/ar
%%DATADIR%%/keymaps/common
%%DATADIR%%/keymaps/da