On Mon, Jan 24, 2011 at 03:43:30PM +0000, Federico G. Schwindt wrote: > On Mon, Jan 24, 2011 at 05:03:23PM +0900, Ryan McBride wrote: > > This patch helps a lot. I couldn't even get through an install before. > > But please don't remove qemu-old yet: I'm using UDP multicast sockets to > > build virtual networks, and they fail on 0.13.0: > > > > $ sudo qemu -m 128 -no-fd-bootchk \ > > -hda virtual.img -boot n -nographic \ > > -net nic,vlan=0,model=rtl8139,macaddr=52:54:00:12:34:03 \ > > -net user -tftp /usr/src/sys/arch/i386/compile/TEST -bootp pxeboot \ > > -net nic,vlan=1,model=rtl8139,macaddr=52:54:00:23:03:01 \ > > -net tap,vlan=1,script=no \ > > -net nic,vlan=3,model=rtl8139,macaddr=52:54:00:23:03:03 \ > > -net socket,vlan=3,mcast=230.0.0.1:10003 > > setsockopt(SOL_IP, IP_MULTICAST_LOOP): Invalid argument > > qemu: -net socket,vlan=3,mcast=230.0.0.1:10003: Device 'socket' could not > > be initialized > > > > Works fine if I comment out the last two lines. > > this should fix it. can you try it please? > > f.-
THIS IS WRONG. If we ever want qemu to run on big endian again, use mcbrides' diff. > > Index: Makefile > =================================================================== > RCS file: /cvs/ports/emulators/qemu/Makefile,v > retrieving revision 1.60 > diff -N -u -p Makefile > --- Makefile 19 Jan 2011 16:22:31 -0000 1.60 > +++ Makefile 24 Jan 2011 15:41:37 -0000 > @@ -6,7 +6,7 @@ ONLY_FOR_ARCHS = i386 amd64 sparc64 > COMMENT = multi system emulator > > DISTNAME = qemu-0.13.0 > -REVISION = 0 > +REVISION = 1 > CATEGORIES = emulators > > HOMEPAGE = http://www.qemu.org/ > Index: patches/patch-net_socket_c > =================================================================== > RCS file: patches/patch-net_socket_c > diff -N -u -p patches/patch-net_socket_c > --- /dev/null 24 Jan 2011 08:41:37 -0000 > +++ patches/patch-net_socket_c 24 Jan 2011 15:41:37 -0000 > @@ -0,0 +1,12 @@ > +$OpenBSD$ > +--- net/socket.c.orig Mon Jan 24 15:34:58 2011 > ++++ net/socket.c Mon Jan 24 15:35:01 2011 > +@@ -195,7 +195,7 @@ static int net_socket_mcast_create(struct sockaddr_in > + /* Force mcast msgs to loopback (eg. several QEMUs in same host */ > + val = 1; > + ret=setsockopt(fd, IPPROTO_IP, IP_MULTICAST_LOOP, > +- (const char *)&val, sizeof(val)); > ++ (const char *)&val, sizeof(char)); > + if (ret < 0) { > + perror("setsockopt(SOL_IP, IP_MULTICAST_LOOP)"); > + goto fail; > Dale Rahn dr...@dalerahn.com