We are experiencing some problems mallocing memory in some Server
programs that allocate large amounts of memory mapped shared data,
malloc seems to fail randomly under Digital Unix V4.0B.
Any ideas anyone ?? Do I need to tweak some kernel parameters to allow
more stack ?
Aplogies for the large amount of text following, I hope it is relevant
to the problem.
/var/adm/messages gave the following error (though only in one case)
Feb 18 10:11:45 moe vmunix: malloc failed: bucket size = 768, #of
failures = 1, ra 0xfffffc00003b5a14
Feb 18 10:11:48 moe vmunix: malloc failed: bucket size = 768, #of
failures = 257, ra 0xfffffc00003b5a14
Feb 18 10:11:48 moe vmunix: malloc failed: bucket size = 768, #of
failures = 513, ra 0xfffffc00003b5a14
Feb 18 10:11:49 moe vmunix: malloc failed: bucket size = 768, #of
failures = 769, ra 0xfffffc00003b5a14
looking at the memory with vmstat -M gives
bucket#  element_size  elements_in_use  elements_free  bytes_in_use
    0            16          6211            7101           99376
    1            32          1419            3701           45408
    2            64          1156             892           73984
    3            96          3498             752          335808
    4           128           973             627          124544
    5           160          2834             838          453440
    6           192           286             302           54912
    7           256           633             999          162048
    8           320           372             178          119040
    9           384             4              17            1536
   10           448             0              18               0
   11           512          1920            2112          983040
   12           576            10              18            5760
   13           640             3               9            1920
   14           704           148              83          104192
   15           768            11              69            8448
   16           896             3               6            2688
   17          1024            20              12           20480
   18          1152           204             146          235008
   19          1344            20               4           26880
   20          1600             2              38            3200
   21          2048             5              31           10240
   22          2688           117               6          314496
   23          4096             4               2           16384
   24          8192            16               6          131072
   25         12288            16               8          196608
   26         16384             2               4           32768
   27         32768             2               0           65536
   28         65536             1               0           65536
   29        131072             0               0               0
   30        262144             0               0               0
   31        524288             0               0               0
Total memory being used from buckets = 4150864 bytes
Total free memory in buckets = 2150352 bytes
Memory usage by type: Type and Number of bytes being used
MBUF        = 7424     MCLUSTER    = 2048     SOCKET      = 82560
PCB         = 84096    ROUTETBL    = 2528     IFADDR      = 1216
SONAME      = 12800    MBLK        = 8192     MBLKDATA    = 7808
STRHEAD     = 12800    STRQUEUE    = 38912    STRMODSW    = 2592
STRSYNCQ    = 9920     STREAMS     = 2944     FILE        = 30784
DEVBUF      = 339424   PATHNAME    = 160      KERNEL TBL  = 133936
ADVFS       = 5376     IPM OPT     = 384      IPM ADDR    = 192
IFM ADDR    = 832      VNODE       = 964160   SIGQ        = 512
KALLOC      = 133584   TEMP        = -809248  PMAP        = 147968
CRED        = 29696    TASK        = 301056   THREAD      = 119680
SELQ        = 45824    RTTIME      = 1664     SVIPC       = 80
FILEBUF     = 45056    MOUNT       = 2528     NAMEI       = 1024
MIPC        = 207392   VMOBJ       = 305216   VMANON      = 139648
VMSEG       = 20032    VMLOCK      = 448      VMMAP       = 22464
VMENTRY     = 232800   FIFO        = 147712   M_ANON      = -97089840
M_VMVPAGE   = -482752  NCALLOUT    = 12000    M_WS        = 16384
SIGACT      = 17728    HEADER      = 768      DNA         = 58080
DLI         = 6592     VMSWAP      = 4992
Should there be -ve numbers here ??, There isn't when the system starts
up, they only go -ve after starting our Server processes
Cheers
Steve Walker
swalker_at_dsl.uk.ibm.com
Received on Mon Feb 23 1998 - 13:25:18 NZDT