I have been testing PicoStation 2 HP units (Atheros 2315 chipset) in the
field. I have two types of nodes: MAPs with mesh gates, and stand-alone
MAPs.
The mesh gates and most of the stand-alone MAPs are working just fine.
However, some of the stand-alone MAPs are rebooting every few hours
because they run out of memory.
Looking at /proc/slabinfo, I see that the allocation of "size-4096"
slabs just increases over time on these nodes until they reboot:
slabinfo - version: 2.1
# name <active_objs> <num_objs> <objsize> <objperslab> <pagesperslab> : tunables <limit>
<batchcount> <sharedfactor> : slabdata <active_slabs> <num_slabs> <sharedavail>
mesh_rmc 256 290 24 145 1 : tunables 120 60 0 :
slabdata 2 2 0
nf_conntrack_expect 0 0 152 26 1 : tunables 120 60 0 :
slabdata 0 0 0
nf_conntrack_80305a50 11 19 208 19 1 : tunables 120 60 0
: slabdata 1 1 0
bridge_fdb_cache 8 59 64 59 1 : tunables 120 60 0 :
slabdata 1 1 0
jffs2_xattr_ref 23 113 32 113 1 : tunables 120 60 0 :
slabdata 1 1 0
jffs2_xattr_datum 20 67 56 67 1 : tunables 120 60 0 :
slabdata 1 1 0
jffs2_inode_cache 60 113 32 113 1 : tunables 120 60 0 :
slabdata 1 1 0
jffs2_node_frag 144 145 24 145 1 : tunables 120 60 0 :
slabdata 1 1 0
jffs2_refblock 113 128 248 16 1 : tunables 120 60 0 :
slabdata 8 8 0
jffs2_tmp_dnode 0 0 32 113 1 : tunables 120 60 0 :
slabdata 0 0 0
jffs2_raw_inode 0 0 96 40 1 : tunables 120 60 0 :
slabdata 0 0 0
jffs2_raw_dirent 0 0 64 59 1 : tunables 120 60 0 :
slabdata 0 0 0
jffs2_full_dnode 175 203 16 203 1 : tunables 120 60 0 :
slabdata 1 1 0
jffs2_i 37 44 336 11 1 : tunables 54 27 0 :
slabdata 4 4 0
squashfs_inode_cache 354 363 352 11 1 : tunables 54 27 0 :
slabdata 33 33 0
inotify_event_private_data 0 0 16 203 1 : tunables 120 60
0 : slabdata 0 0 0
inotify_inode_mark 0 0 72 53 1 : tunables 120 60 0 :
slabdata 0 0 0
dio 0 0 320 12 1 : tunables 54 27 0 :
slabdata 0 0 0
fasync_cache 0 0 24 145 1 : tunables 120 60 0 :
slabdata 0 0 0
posix_timers_cache 0 0 104 37 1 : tunables 120 60 0 :
slabdata 0 0 0
uid_cache 1 59 64 59 1 : tunables 120 60 0 :
slabdata 1 1 0
UNIX 12 18 416 9 1 : tunables 54 27 0 :
slabdata 2 2 0
ip_mrt_cache 0 0 96 40 1 : tunables 120 60 0 :
slabdata 0 0 0
UDP-Lite 0 0 512 7 1 : tunables 54 27 0 :
slabdata 0 0 0
tcp_bind_bucket 3 113 32 113 1 : tunables 120 60 0 :
slabdata 1 1 0
inet_peer_cache 4 24 160 24 1 : tunables 120 60 0 :
slabdata 1 1 0
ip_fib_trie 8 113 32 113 1 : tunables 120 60 0 :
slabdata 1 1 0
ip_fib_alias 9 145 24 145 1 : tunables 120 60 0 :
slabdata 1 1 0
ip_dst_cache 26 48 160 24 1 : tunables 120 60 0 :
slabdata 2 2 0
PING 0 0 480 8 1 : tunables 54 27 0 :
slabdata 0 0 0
RAW 2 8 480 8 1 : tunables 54 27 0 :
slabdata 1 1 0
UDP 14 14 512 7 1 : tunables 54 27 0 :
slabdata 2 2 0
tw_sock_TCP 0 0 128 30 1 : tunables 120 60 0 :
slabdata 0 0 0
request_sock_TCP 0 0 96 40 1 : tunables 120 60 0 :
slabdata 0 0 0
TCP 4 6 1120 3 1 : tunables 24 12 0 :
slabdata 2 2 0
eventpoll_pwq 5 92 40 92 1 : tunables 120 60 0 :
slabdata 1 1 0
eventpoll_epi 5 40 96 40 1 : tunables 120 60 0 :
slabdata 1 1 0
blkdev_queue 7 8 904 4 1 : tunables 54 27 0 :
slabdata 2 2 0
blkdev_requests 28 36 216 18 1 : tunables 120 60 0 :
slabdata 2 2 0
blkdev_ioc 0 0 56 67 1 : tunables 120 60 0 :
slabdata 0 0 0
fsnotify_event_holder 0 0 16 203 1 : tunables 120 60 0
: slabdata 0 0 0
fsnotify_event 1 59 64 59 1 : tunables 120 60 0 :
slabdata 1 1 0
bio-0 2 30 128 30 1 : tunables 120 60 0 :
slabdata 1 1 0
biovec-256 2 2 3072 1 1 : tunables 24 12 0 :
slabdata 2 2 0
biovec-128 0 0 1536 2 1 : tunables 24 12 0 :
slabdata 0 0 0
biovec-64 0 0 768 5 1 : tunables 54 27 0 :
slabdata 0 0 0
biovec-16 0 0 192 20 1 : tunables 120 60 0 :
slabdata 0 0 0
sock_inode_cache 55 55 352 11 1 : tunables 54 27 0 :
slabdata 5 5 0
skbuff_fclone_cache 10 10 384 10 1 : tunables 54 27 0 :
slabdata 1 1 0
skbuff_head_cache 2140 2140 192 20 1 : tunables 120 60 0 :
slabdata 107 107 0
file_lock_cache 0 0 112 35 1 : tunables 120 60 0 :
slabdata 0 0 0
shmem_inode_cache 96 96 328 12 1 : tunables 54 27 0 :
slabdata 8 8 0
proc_inode_cache 216 216 328 12 1 : tunables 54 27 0 :
slabdata 18 18 0
sigqueue 0 0 144 27 1 : tunables 120 60 0 :
slabdata 0 0 0
bdev_cache 3 9 416 9 1 : tunables 54 27 0 :
slabdata 1 1 0
sysfs_dir_cache 1924 1968 80 48 1 : tunables 120 60 0 :
slabdata 41 41 0
mnt_cache 22 24 160 24 1 : tunables 120 60 0 :
slabdata 1 1 0
filp 270 330 128 30 1 : tunables 120 60 0 :
slabdata 11 11 0
inode_cache 871 871 296 13 1 : tunables 54 27 0 :
slabdata 67 67 0
dentry 2610 2610 128 30 1 : tunables 120 60 0 :
slabdata 87 87 0
names_cache 6 6 4096 1 1 : tunables 24 12 0 :
slabdata 6 6 0
buffer_head 1932 1947 64 59 1 : tunables 120 60 0 :
slabdata 33 33 0
nsproxy 0 0 24 145 1 : tunables 120 60 0 :
slabdata 0 0 0
vm_area_struct 804 880 88 44 1 : tunables 120 60 0 :
slabdata 20 20 0
mm_struct 40 40 384 10 1 : tunables 54 27 0 :
slabdata 4 4 0
fs_cache 52 113 32 113 1 : tunables 120 60 0 :
slabdata 1 1 0
files_cache 40 40 192 20 1 : tunables 120 60 0 :
slabdata 2 2 0
signal_cache 63 63 512 7 1 : tunables 54 27 0 :
slabdata 9 9 0
sighand_cache 62 62 3104 1 1 : tunables 24 12 0 :
slabdata 62 62 0
task_struct 63 63 1064 3 1 : tunables 24 12 0 :
slabdata 21 21 0
cred_jar 160 160 96 40 1 : tunables 120 60 0 :
slabdata 4 4 0
anon_vma_chain 605 870 24 145 1 : tunables 120 60 0 :
slabdata 6 6 0
anon_vma 452 565 32 113 1 : tunables 120 60 0 :
slabdata 5 5 0
pid 118 118 64 59 1 : tunables 120 60 0 :
slabdata 2 2 0
radix_tree_node 99 104 296 13 1 : tunables 54 27 0 :
slabdata 8 8 0
idr_layer_cache 164 182 152 26 1 : tunables 120 60 0 :
slabdata 7 7 0
size-131072 0 0 131072 1 32 : tunables 8 4 0 :
slabdata 0 0 0
size-65536 3 3 65536 1 16 : tunables 8 4 0 :
slabdata 3 3 0
size-32768 2 2 32768 1 8 : tunables 8 4 0 :
slabdata 2 2 0
size-16384 0 0 16384 1 4 : tunables 8 4 0 :
slabdata 0 0 0
size-8192 3 3 8192 1 2 : tunables 8 4 0 :
slabdata 3 3 0
size-4096 2305 2305 4096 1 1 : tunables 24 12 0 :
slabdata 2305 2305 0
size-2048 108 108 2048 2 1 : tunables 24 12 0 :
slabdata 54 54 0
size-1024 76 76 1024 4 1 : tunables 54 27 0 :
slabdata 19 19 0
size-512 248 248 512 8 1 : tunables 54 27 0 :
slabdata 31 31 0
size-256 90 90 256 15 1 : tunables 120 60 0 :
slabdata 6 6 0
size-192 178 180 256 15 1 : tunables 120 60 0 :
slabdata 12 12 0
size-128 150 150 128 30 1 : tunables 120 60 0 :
slabdata 5 5 0
size-96 267 300 128 30 1 : tunables 120 60 0 :
slabdata 10 10 0
size-64 1080 1080 128 30 1 : tunables 120 60 0 :
slabdata 36 36 0
size-32 4530 4530 128 30 1 : tunables 120 60 0 :
slabdata 151 151 0
kmem_cache 91 120 96 40 1 : tunables 120 60 0 :
slabdata 3 3 0
On most of the nodes, there are about 300-350 "size-4096" slabs
allocated - as you can see from the above, something just keeps
allocating until it runs out.
Of course, this only happens in locations that are far away from here -
I haven't been able to replicate this locally. Fortunately, I have ssh
access to one of the sites so I can see what's going on.
Any ideas about what's going on, and how to fix it will be appreciated.
--
Bill Moffitt
_______________________________________________
Devel mailing list
[email protected]
http://lists.open80211s.org/cgi-bin/mailman/listinfo/devel