[comp.unix.internals] SLIP/streams problems

rmilner@zia.aoc.nrao.edu (Ruth Milner) (11/14/90)

We have a Sun 3/260, running 4.0.3, which runs SLIP and has been running into
problems with streams allocation. Usually this just consists of SLIP making
"slip_output can't allocb" complaints, but today it spilled over into general 
terminal usage. The root of the problem is that we are running out of the 
larger streams buffers (excuse me if I haven't got the terminology correct; 
I don't know very much about streams internals). The number of NBLK512/1024/
2048/4096 has already been increased once from the pathetically low values 
they had originally, but it made no noticeable difference to SLIP. 

Today we started seeing problems with the terminal driver being unable to
allocate streams buffers. "cat" was unable to output files over about 1K
directly to the screen (no problem with redirection to disk or any other
command). The output from "netstat -m" is as follows: 

372/448 mbufs in use:
    19 mbufs allocated to data
    12 mbufs allocated to packet headers
    103 mbufs allocated to socket structures
    137 mbufs allocated to protocol control blocks
    94 mbufs allocated to routing table entries
    2 mbufs allocated to socket names and addresses
    5 mbufs allocated to interface addresses
0/32 mapped pages in use
88 Kbytes allocated to network (52% in use)
0 requests for memory denied

streams allocation:
                                         cumulative  allocation
                      current   maximum       total    failures
streams                    22        23         157           0
queues                     80        84         621           0
mblks                     140       176      215604           0

total dblks               140       176      215604       90715
size    4 dblks             0        20       78588           0
size   16 dblks             3        22       32774           0
size   64 dblks             0        34       98291           0
size  128 dblks            52        55        2850           0
size  256 dblks             1        11        2089           0
size  512 dblks            28        28         267       11794
size 1024 dblks            28        28         689       45369
size 2048 dblks            28        28          56       33530
size 4096 dblks             0         0           0          22
 
As you can see, the problem is definitely in the streams area, not with
memory buffers or anything like that. Normally when this problem shows up,
the number of allocation failures is an order of magnitude lower than this.

So far all we have been able to do to cure this problem is reboot. Our
version of SLIP is up-to-date. Does anyone have any idea what's going on,
and/or how to fix it? It looks to me as though SLIP (or something, but it's
the likeliest possibility) is allocating buffers and not letting go of them
properly afterwards.

Thank you very much.
-- 
Ruth Milner
Systems Manager                     NRAO/VLA                    Socorro NM
                            rmilner@zia.aoc.nrao.edu