From owner-freebsd-hackers Wed Aug 26 10:46:37 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id KAA10991 for freebsd-hackers-outgoing; Wed, 26 Aug 1998 10:46:37 -0700 (PDT) (envelope-from owner-freebsd-hackers@FreeBSD.ORG) Received: from atdot.dotat.org (atdot.dotat.org [203.23.150.35]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id KAA10983 for ; Wed, 26 Aug 1998 10:46:33 -0700 (PDT) (envelope-from newton@atdot.dotat.org) Received: (from newton@localhost) by atdot.dotat.org (8.8.8/8.7) id DAA08675; Thu, 27 Aug 1998 03:12:02 +0930 (CST) Date: Thu, 27 Aug 1998 03:12:02 +0930 (CST) From: Mark Newton Message-Id: <199808261742.DAA08675@atdot.dotat.org> To: freebsd-svr4@atdot.dotat.org Subject: X11 clients seem to work -- But... Cc: freebsd-hackers@FreeBSD.ORG, mike@smith.net.au Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG I announced the availability of an ALPHA-quality SVR4 emulator for FreeBSD yesterday. I've done more work on it this evening and managed to get X clients to work -- Kind of. Diligent readers will recall that emulated X clients were failing because a read() on the connection to the X server was returning EAGAIN for no apparent reason. Well, I've written all kinds of debug writes into the emulated SysVR4 read() system call, and I've discovered that this is because the socket underlying the connection to the X server is marked with the SS_NBIO (non-blocking I/O) flag. I have no idea why, though. As far as I can tell, the emulated executables aren't doing anything that sets that flag. Also, emulated executables which (a) use networking, and (b) aren't X clients don't have that flag bit set -- It's something specific to the set of streams ioctl() operations that X clients are doing. I can get X clients to work by indulging in a grotty hack: If SS_NBIO is set when a read() call is made, unset it :-) That's hardly a workable solution, though. I'll make an updated snapshot of my development tree (with the above hack included - ugh) at ftp://slash.dotat.org/pub/freebsd-svr4/svr4.tar.gz. if anyone is interested and wants to see if they can nut it out, please be my guest. - mark [ off to compile a kernel which prints warnings when the ioctl which sets SS_NBIO is used... ] -------------------------------------------------------------------- I tried an internal modem, newton@atdot.dotat.org but it hurt when I walked. Mark Newton ----- Voice: +61-4-1958-3414 ------------- Fax: +61-8-83034403 ----- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message