| Every once in a while people trying to log on to our system
| get the following message:
| suzzy% telnet stis.nsf.gov
| Trying 22.214.171.124 ...
| Connected to master.stis.nsf.gov.
| Escape character is '^]'.
| telnetd: /dev/ttyq8: Out of stream resources
| Does anyone know what causes it? There are not that many real
| users on the system, but the pseudo ttys seem all tied up with
| processes running in.telnetd. If left alone, the problem
| disappears, but then reappears some other day. What is the
| solution? If it's not a bug, but a feature, is there something
| I can run in crontab to clear it out?
Judging by the responses, I may not have phrased the question well.
Most people pointed out that I had run out of stream resources, and
that I could easily rebuild the kernel with more. I knew I had run
out, it just seemed to me that I shouldn't have run out with the light
load I have on the system. Raising the number would probably solve
the problem, but if there's something pathological happening, it
seemed to me that it might be better to fix the pathology.
Also, I neglected to state that this is a 386i running 4.0.2.
Thanks to everyone that replied. There were few enough replies that
I've just included them here, unedited.
From: stern@sunne.East.Sun.COM (Hal Stern - NE Area Tactical Engineering)
what SunOS release are you running? 4.0.3? you should also
tell us what kind of machine, what patches, etc.
if you are running out of streams, you can increase the
number of streams allocated in the kernel by editing
/sys/conf.common/param.c you should see either
NSTREAM defined or STREAM_INIT; try doubling either
of these values.
this should only be a problem in 4.0.3, where the number
of streams is determined at boot time. in 4.1, streams
resources are allocated dynamically.
From: "Matt Crawford" <firstname.lastname@example.org>
telnetd is getting an errno ENOSTR when setting up the pty for the
session. You're running out of some stream resource - stream heads,
queues, mblks,something along those lines.
The problem disappears when resources are freed by the processes that
are using them.
You can rebuild your kernel with a bigger "maxusers", which will
increase all sorts of resources in some proportion, you you can give
into the kernel's param.c and increase just the stream resources.
I suggest the former approach.
From: John Howie <email@example.com>
Your problem is that the kernel's Streams Resources are running out. If
you know the technical details of SunOS you may recall that Sun have
re-implemented the TTY and Pseudo TTY devices as Streams Devices. Use the
crash command when the system is running (don't worry - you don't actually
crash the system) to see what the state of the Streams Resources are.
I can't remember offhand if you can increase the number of Streams
Resources available to your system. A quick check in the Streams Programming
Manual would clarify the situation. Unless you are running something intensive
on a Streams device, such as X.25 or TUNNEL or SLIP, you should not have to
increase any resources.
From: firstname.lastname@example.org (Steve Simmons)
I've not had this happen on a sun, but have seen it on enough other
systems to be fairly sure that you're running into a kernel constant
that needs to be bumped up. My guess (remember, I've not done this
on a sun under 4.1.1) is you change
pseudo-device pty # pseudo-tty's, also needed for SunView
pseudo-device ptyXXX # pseudo-tty's, also needed for SunView
where XXX is some fairly large number. For a rule of thumb I use 3x the
number of simultaneous users, rounded up to the nearest power of two.
From: Postmaster <Piete.Brooks@cl.cam.ac.uk>
Tried "pstat -T", "netstat -m" ?
This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:06:16 CDT