Date: Sat, 16 Dec 2000 14:43:03 -0800 From: "Renaud Waldura" <renaud@waldura.com> To: <emulation@freebsd.org> Subject: Re: q3ded 1.17: linux_socketcall returns errno -11 Message-ID: <01a901c067b1$8ced2d00$0402010a@biohz.net>
next in thread | raw e-mail | index | archive | help
After calling up ktrace to the rescue, here's what I get about what's going
on inside q3ded (looping at high speed, and sucking up 90% CPU) :
51543 q3ded CALL mincore(0xbfbfba48,0xbfbfba50)
51543 q3ded RET mincore 0
51543 q3ded CALL old.gethostid(0x1,0xbfbfb9d8,0,0,0xbfbfb9d0)
51543 q3ded RET old.gethostid 0
51543 q3ded CALL old.recv(0xc,0xbfbfb9e8)
51543 q3ded RET old.recv -1 errno -11 Unknown error: -11
After reading through the recvmsg(2) man page, I'm starting to think it
might not the culprit. From what I see, the Linux emulation code doesn't
muck with recvmsg() at all..
In linux_socket.c:
case LINUX_RECVMSG:
return recvmsg(p, args->args);
And now what? I'm confused about where to go next.
----- Original Message -----
From: "Renaud Waldura" <renaud@waldura.com>
To: <emulation@freebsd.org>
Sent: Saturday, December 16, 2000 11:36 AM
Subject: Re: q3ded 1.17: linux_socketcall returns errno -11
> More information about the problem if that helps: apparently the Quake
> server makes heavy use of OOB packets. Any known issues with that?
>
> I also updated to FreeBSD 4.2, without much success:
>
> gettimeofday(0xbfbfba60,0xbfbfba68) = 2 (0x2)
> linux_newselect(0x1,0xbfbfb9f0,0x0,0x0,0xbfbfb9e8) = 5 (0x5)
> linux_socketcall(0xc,0xbfbfba00) ERR#35 'Resource
> temporarily unavailable'
>
>
> Please be kind enough to Cc me, as I'm not subscribed to this list.
Thanks!
>
>
>
> ----- Original Message -----
> From: "Renaud Waldura" <renaud@waldura.com>
> To: <emulation@freebsd.org>
> Sent: Saturday, December 16, 2000 3:06 AM
> Subject: q3ded 1.17: linux_socketcall returns errno -11
>
>
> > I'm trying to get the Quake3 dedicated server 1.17 (the latest point
> release
> > from ID software, makers of Quake) to work on FreeBSD 4.0. I wrestled
the
> > install to the ground, but the program itself is misbehaving -- it loops
> on
> > the following:
> >
> > syscall gettimeofday(0xbfbfb940,0xbfbfb948)
> > returns 0 (0x0)
> > syscall linux_newselect(0x1,0xbfbfb8d0,0x0,0x0,0xbfbfb8c8)
> > returns 0 (0x0)
> > syscall linux_socketcall(0xc,0xbfbfb8e0)
> > errno -11 'Resource temporarily unavailable'
> >
> > (this information brought to you by truss and the number 11)
> >
> > The Quake3 server opens a UDP socket, and as far as I can tell, listens
on
> > it without doing anything peculiar. Any ideas why linux_socketcall()
would
> > return -11? Do the parameters look anything abnormal to someone familiar
> > with the linux emulation code?
> >
> > How can I track this problem further? I.e., where is the source for this
> > stuff? I couldn't find an "emulation" CVS branch, what is it under?
> >
> > --Renaud
> >
>
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-emulation" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?01a901c067b1$8ced2d00$0402010a>
