experimental qemu-devel port (update), please test! (was: Re: qemu segfaulting all over the place)

Juergen Lock nox at jelal.kn-bremen.de
Sat Mar 3 19:36:14 UTC 2007


In article <45E5CDE3.7030509 at centtech.com> anderson at centtech.com (Eric Anderson)writes:

>On 02/24/07 13:27, Juergen Lock wrote:
>> On Sat, Feb 24, 2007 at 08:17:23PM +0100, Juergen Lock wrote:
>>> In article <45DB10D3.8040807 at centtech.com> you write:
>>>> Is anyone else experiencing a nearly useless qemu experience with the 
>>>> latest versions?
>>>>
>>>> I'm running -CURRENT from yesterday, and the latest qemu port (and kqemu).
>>>>
>>>> These combinations segfault:
>>>>
>>>> Anything with the -vnc option, when disconnecting the vnc viewer, will 
>>>> segfault:
>>>> sudo qemu -hda /alt/images/fs.img -hdb /alt/images/swapfile -net nic 
>>>> -net tap -snapshot -vnc :1 -serial /dev/ttyv8 -kernel-kqemu
>>>>
>>>> This used to work nicely, now it dies when I connect to port 1111:
>>>> sudo qemu -hda /alt/images/fs.img -hdb /alt/images/swapfile -net nic 
>>>> -net tap -snapshot -serial telnet::1111,server,nowait -std-vga -monitor 
>>>> stdio -full-screen -kernel-kqemu
>>>>
>>>> Which, when it dies, ktrace shows me:
>>>> ...
>>> Hmm I don't know much about the code in question, you may have more
>>> luck reposting this on the qemu list:
>>> 	http://lists.gnu.org/mailman/listinfo/qemu-devel
>> 
>> And just when I posted this...  There were just patches posted on that
>> list that fix vnc disconnect segfaults, so I think the next port update
>> will fix at least that problem.
>
>Thanks!  I've been hoping to see the update, but still not there yet.. 
>:(  Oh well.

Sorry things are going a little slow around here...  But now I have
the following update for you all to test:

1. copy the qemu port dir (/usr/ports/emulators/qemu) to
   emulators/qemu-devel
2. apply the patch below in emulators
3. deinstall qemu
3. run `make install' in the new qemu-devel port dir (you probably
   cannot use portinstall/portupgrade unless you add the new port to
   INDEX yourself, that is until it is committed...)
4. test!

 Should you want to go back, deinstall qemu-devel and then install the
originall qemu port again.

>    I wonder if that will also fix my telnet issue with qemu.

 Not sure, but now you should be able to check yourself. :)

Index: qemu/Makefile
===================================================================
RCS file: /home/pcvs/ports/emulators/qemu/Makefile,v
retrieving revision 1.69
diff -u -r1.69 Makefile
--- qemu/Makefile	6 Feb 2007 23:49:01 -0000	1.69
+++ qemu/Makefile	3 Mar 2007 19:29:33 -0000
@@ -33,6 +33,7 @@
 MAKE_ENV+=	BSD_MAKE="${MAKE}" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}"
 MAN1=		qemu.1 qemu-img.1
 ONLY_FOR_ARCHS=	amd64 i386
+CONFLICTS=	qemu-devel-[0-9]*
 
 OPTIONS=	KQEMU "Build with (alpha!) accelerator module" Off \
 		HACKS_CIRRUS "Large display speedup (buggy!)" Off \
Index: qemu-devel/Makefile
===================================================================
RCS file: /home/pcvs/ports/emulators/qemu/Makefile,v
retrieving revision 1.69
diff -u -r1.69 Makefile
--- qemu-devel/Makefile	6 Feb 2007 23:49:01 -0000	1.69
+++ qemu-devel/Makefile	3 Mar 2007 17:39:33 -0000
@@ -6,24 +6,25 @@
 #
 
 PORTNAME=	qemu
-PORTVERSION=	0.9.0
+PORTVERSION=	0.9.0s.20070303
 CATEGORIES=	emulators
 MASTER_SITES=	http://qemu.org/:release \
 		http://qemu-forum.ipi.fi/qemu-snapshots/:snapshot \
 		http://people.fruitsalad.org/nox/qemu/:snapshot \
 		http://www.volny.cz/xnavara/qemu/:snapshot \
 		http://people.brandeis.edu/~jcoiner/qemu_idedma/:idedma \
-		http://people.freebsd.org/~maho/qemu/:misc \
-		http://people.freebsd.org/~jkim/:bios
-DISTFILES=	${DISTNAME}${EXTRACT_SUFX}:release \
-		qemu-bios.bin:bios
+		http://people.freebsd.org/~maho/qemu/:misc
+DISTNAME=	${PORTNAME}-snapshot-2007-03-03_05
+DISTFILES=	${DISTNAME}${EXTRACT_SUFX}:snapshot
 DIST_SUBDIR=	qemu
 EXTRACT_ONLY=	${DISTNAME}${EXTRACT_SUFX}
+PKGNAMESUFFIX=	-devel
 
 MAINTAINER=	nox at FreeBSD.org
 COMMENT=	QEMU CPU Emulator
 
 HAS_CONFIGURE=	yes
+USE_BZIP2=	yes
 USE_GMAKE=	yes
 USE_GETOPT_LONG=	yes
 USE_PERL5=	yes
@@ -33,6 +34,7 @@
 MAKE_ENV+=	BSD_MAKE="${MAKE}" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}"
 MAN1=		qemu.1 qemu-img.1
 ONLY_FOR_ARCHS=	amd64 i386
+CONFLICTS=	qemu-[0-9]*
 
 OPTIONS=	KQEMU "Build with (alpha!) accelerator module" Off \
 		HACKS_CIRRUS "Large display speedup (buggy!)" Off \
@@ -80,7 +82,6 @@
 	@${MKDIR} ${WRKSRC}/kqemu
 	@${TOUCH} ${WRKSRC}/kqemu/Makefile
 	@${ECHO} all: > ${WRKSRC}/kqemu/Makefile.freebsd
-	@${CP} -p ${_DISTDIR}/qemu-bios.bin ${WRKSRC}/pc-bios/bios.bin
 
 pre-patch:
 	@for A in ${ONLY_FOR_ARCHS}; do \
Index: qemu-devel/distinfo
===================================================================
RCS file: /home/pcvs/ports/emulators/qemu/distinfo,v
retrieving revision 1.41
diff -u -r1.41 distinfo
--- qemu-devel/distinfo	6 Feb 2007 23:49:01 -0000	1.41
+++ qemu-devel/distinfo	3 Mar 2007 17:40:08 -0000
@@ -1,9 +1,6 @@
-MD5 (qemu/qemu-0.9.0.tar.gz) = ab11a03ba30cf4a70641f0f170473d69
-SHA256 (qemu/qemu-0.9.0.tar.gz) = 491facf9335654967ee53d8fb3540a274bfcbdcc225506bd38c4ee8e9ab405c1
-SIZE (qemu/qemu-0.9.0.tar.gz) = 1901741
-MD5 (qemu/qemu-bios.bin) = 173e256f17b4ac1f6e3249c83071e8f5
-SHA256 (qemu/qemu-bios.bin) = 452d863ec8ac9e2246950ac204410e847cdeba880d7bec2aeb79c4f2fbb0ad17
-SIZE (qemu/qemu-bios.bin) = 131072
+MD5 (qemu/qemu-snapshot-2007-03-03_05.tar.bz2) = bcd0f3d4f52a4b1a2f523091d17a507f
+SHA256 (qemu/qemu-snapshot-2007-03-03_05.tar.bz2) = 31b578a3a7624e9479ed0541ea8eb6c169f9e5c3ec2df3ddc522d2c22c321990
+SIZE (qemu/qemu-snapshot-2007-03-03_05.tar.bz2) = 1645930
 MD5 (qemu/patch3_cirrus) = ebe7ed9fce804c49e024bc93bfdfc810
 SHA256 (qemu/patch3_cirrus) = e862371834b7d895a896fbdb84fd9f70d17b5729a6f6789a48a61504fc941e11
 SIZE (qemu/patch3_cirrus) = 8817
Index: qemu-devel/files/patch-Makefile
===================================================================
RCS file: /home/pcvs/ports/emulators/qemu/files/patch-Makefile,v
retrieving revision 1.2
diff -u -r1.2 patch-Makefile
--- qemu-devel/files/patch-Makefile	4 Nov 2006 18:29:35 -0000	1.2
+++ qemu-devel/files/patch-Makefile	3 Mar 2007 17:42:49 -0000
@@ -1,6 +1,6 @@
 Index: qemu/Makefile
-@@ -20,6 +20,10 @@
- LDFLAGS+=-static
+@@ -19,14 +19,19 @@
+ BASE_LDFLAGS += -static
  endif
  ifdef BUILD_DOCS
 +ifdef NOPORTDOCS
@@ -10,17 +10,17 @@
 +endif
  else
  DOCS=
-@@ -28,7 +28,8 @@
+ endif
+ 
  ifndef CONFIG_DARWIN
  ifndef CONFIG_WIN32
- ifndef CONFIG_SOLARIS
 -LIBS+=-lrt
 +# XXX need ifndef CONFIG_BSD
 +# LIBS+=-lrt
  endif
  endif
- endif
-@@ -72,8 +75,10 @@
+ 
+@@ -64,8 +69,10 @@
  common  de-ch  es     fo  fr-ca  hu     ja  mk  nl-be      pt  sl     tr
  
  install-doc: $(DOCS)
Index: qemu-devel/files/patch-bd
===================================================================
RCS file: /home/pcvs/ports/emulators/qemu/files/patch-bd,v
retrieving revision 1.1
diff -u -r1.1 patch-bd
--- qemu-devel/files/patch-bd	3 Jun 2004 02:12:52 -0000	1.1
+++ qemu-devel/files/patch-bd	3 Mar 2007 18:55:01 -0000
@@ -1,10 +1,19 @@
 Index: qemu/configure
-@@ -286,7 +286,7 @@
- if test -z "$prefix" ; then
-     prefix="/usr/local"
- fi
--mandir="$prefix/share/man"
-+mandir="$prefix/man"
- datadir="$prefix/share/qemu"
- docdir="$prefix/share/doc/qemu"
- bindir="$prefix/bin"
+@@ -570,7 +570,7 @@
+   if test -z "$prefix" ; then
+       prefix="/usr/local"
+   fi
+-  mansuffix="/share/man"
++  mansuffix="/man"
+   datasuffix="/share/qemu"
+   docsuffix="/share/doc/qemu"
+   binsuffix="/bin"
+@@ -645,7 +645,7 @@
+ echo "bindir=\${prefix}$binsuffix" >> $config_mak
+ echo "mandir=\${prefix}$mansuffix" >> $config_mak
+ echo "datadir=\${prefix}$datasuffix" >> $config_mak
+-echo "docdir=\${prefix}$docsuffic" >> $config_mak
++echo "docdir=\${prefix}$docsuffix" >> $config_mak
+ echo "#define CONFIG_QEMU_SHAREDIR \"$prefix$datasuffix\"" >> $config_h
+ echo "MAKE=$make" >> $config_mak
+ echo "INSTALL=$install" >> $config_mak
Index: qemu-devel/files/patch-fbsd
===================================================================
RCS file: /home/pcvs/ports/emulators/qemu/files/patch-fbsd,v
retrieving revision 1.8
diff -u -r1.8 patch-fbsd
--- qemu-devel/files/patch-fbsd	7 Aug 2006 16:10:27 -0000	1.8
+++ qemu-devel/files/patch-fbsd	3 Mar 2007 17:50:05 -0000
@@ -20,17 +20,17 @@
  	rm -f *.o *.a $(TOOLS) dyngen$(EXESUF) TAGS *.pod *~ */*~
  	$(MAKE) -C tests clean
 Index: qemu/Makefile.target
-@@ -391,8 +391,8 @@
- VL_LDFLAGS+=-Wl,-G0 -Wl,-T,$(SRC_PATH)/ia64.ld
+@@ -465,8 +465,8 @@
+ SDL_LIBS := $(filter-out -mwindows, $(SDL_LIBS)) -mconsole
  endif
  
 -$(QEMU_SYSTEM): $(VL_OBJS) libqemu.a
--	$(CC) $(VL_LDFLAGS) -o $@ $^ $(LIBS) $(SDL_LIBS) $(COCOA_LIBS) $(VL_LIBS)
+-	$(CC) $(VL_LDFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) $(SDL_LIBS) $(COCOA_LIBS) $(VL_LIBS)
 +$(QEMU_SYSTEM): $(VL_OBJS) libqemu.a ../bsd/libmath.a
-+	$(CC) $(VL_LDFLAGS) -o $@ $^ $(LIBS) $(SDL_LIBS) $(COCOA_LIBS) $(VL_LIBS) ../bsd/libmath.a
++	$(CC) $(VL_LDFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) $(SDL_LIBS) $(COCOA_LIBS) $(VL_LIBS) ../bsd/libmath.a
  
  cocoa.o: cocoa.m
- 	$(CC) $(CFLAGS) $(DEFINES) -c -o $@ $<
+ 	$(CC) $(CFLAGS) $(CPPFLAGS) $(BASE_CFLAGS) -c -o $@ $<
 Index: qemu/fpu/softfloat-native.c
 @@ -2,11 +2,16 @@
     context is supported */
Index: qemu-devel/files/patch-vl.c
===================================================================
RCS file: /home/pcvs/ports/emulators/qemu/files/patch-vl.c,v
retrieving revision 1.5
diff -u -r1.5 patch-vl.c
--- qemu-devel/files/patch-vl.c	25 Dec 2006 19:49:52 -0000	1.5
+++ qemu-devel/files/patch-vl.c	3 Mar 2007 18:03:21 -0000
@@ -8,14 +8,14 @@
  static CharDriverState *qemu_chr_open_pty(void)
  {
      struct termios tty;
-@@ -1665,6 +1665,7 @@
+@@ -1904,6 +1907,7 @@
      return chr;
  }
  
 +#if defined(__linux__)
- static int pp_ioctl(CharDriverState *chr, int cmd, void *arg)
- {
-     int fd = (int)chr->opaque;
+ typedef struct {
+     int fd;
+     int mode;
 @@ -1727,6 +1728,7 @@
      chr->chr_ioctl = pp_ioctl;
      return chr;
Index: qemu-devel/files/patch-vl.c-nographic
===================================================================
RCS file: /home/pcvs/ports/emulators/qemu/files/patch-vl.c-nographic,v
retrieving revision 1.1
diff -u -r1.1 patch-vl.c-nographic
--- qemu-devel/files/patch-vl.c-nographic	18 Mar 2006 21:23:42 -0000	1.1
+++ qemu-devel/files/patch-vl.c-nographic	3 Mar 2007 17:52:35 -0000
@@ -1,8 +1,8 @@
 Index: qemu/vl.c
-@@ -4668,6 +4668,7 @@
+@@ -7131,6 +7131,7 @@
              case QEMU_OPTION_nographic:
-                 pstrcpy(monitor_device, sizeof(monitor_device), "stdio");
                  pstrcpy(serial_devices[0], sizeof(serial_devices[0]), "stdio");
+                 pstrcpy(monitor_device, sizeof(monitor_device), "stdio");
 +                pstrcpy(parallel_devices[0], sizeof(parallel_devices[0]), "null");
                  nographic = 1;
                  break;


More information about the freebsd-emulation mailing list