[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ircd 2.9.5: running Solaris 2.6, exiting at fclose(stdout)



On Mon, Apr 20, 1998 at 04:07:19PM -0400, Christophe Kalt wrote:
> On Apr 20, James Waldrop wrote:
> | > My kernel is configured for 1024 fd's, and I noticed that the header
> | > file is subtracting from MAXCONNECTIONS to get other relevant values, so
> | > I went ahead and set it to 1024. I'll try setting it a little lower...
> | 
> | Ok, I did a completely new build, with MAXCONNECTIONS set to 200. The
> | problem is still there. Basically fclose() silently kills everything.
> | I'm going to see about adding debug information into the binary and
> | running under gdb... Maybe that will give me more info.
> 
> This is odd.
> I run ircd on solaris 2.6 myself, so I know it should be
> working. :-)
> 
> It probably dies after fclose() on something else.
> does "./ircd -v" run fine?
> is the ircd_dir directory correct?

   This could be way off base, but I know we had problems with Solaris
running Web Servers here at Demon, with a lot of virtual hosts, each
with their own log files.  The problem was tracked down to the fact that
although the Solaris kernel happily allows >256 fd's per process, the
libc used was only using an unsigned char in the stdio code to store the
fd.  Anyone else see a problem when you go to larger than 256 fd's ?

   I seem to remember we're talking about a "fclose(stdout);" here,
which I wouldn't expect to be on an fd > 256, but it's still something
to keep in mind.

-Neil
-- 
Neil Charley - npc@xxxxxxxxx | Demon Internet NOC Frontline Administrator
	    This posting is not an official communication of
	     Demon Internet Ltd., unless otherwise stated.