Hi guys
I have a question regarding uClinux 2.4.32 slab allocator.
I have a system (Coldfire 5208) with 16 mbytes of Ram and 8 Mbytes of flash.
When the system starts, I have:
Memory available: 12800k/16383k RAM, 0k/0k ROM (896k kernel code, 275k data)
# free
total: used: free: shared: buffers: cached:
Mem: 13139968 2695168 10444800 0 237568 249856
At this stage, if I do a cat /proc/slabinfo and If I sum all the buffers
(all the buffers, not only the active ones), the total is about 2 Mbytes,
that is not so far from the 2,6 Mbytes used given by "free".
Now if I run my application ( tcl interpreter), the sum of all the buffers
of /proc/slabinfo is about 6.5 Mbytes (!!) and free returns a ram usage of
9.5 Mbytes.
=> I have lost 3 Mbytes.
Could someone tell me how to recover these Megabytes or where are they
located ?
Thanks a lot for your help.
Stan
Here is the meminfo before etcl:
# cat /proc/meminfo
total: used: free: shared: buffers: cached:
Mem: 13246464 2576384 10670080 0 200704 245760
Swap: 0 0 0
MemTotal: 12936 kB
MemFree: 10420 kB
MemShared: 0 kB
Buffers: 196 kB
Active: 264 kB
Inactive: 172 kB
HighTotal: 0 kB
HighFree: 0 kB
LowTotal: 12936 kB
LowFree: 10420 kB
SwapTotal: 0 kB
SwapFree: 0 kB
Here is the meminfo/slabinfo after etcl:
# cat /proc/slabinfo
slabinfo - version: 1.1
kmem_cache 68 72 108 2 2 1
ip_fib_hash 9 203 16 1 1 1
tcp_tw_bucket 0 0 96 0 0 1
tcp_bind_bucket 5 113 32 1 1 1
tcp_open_request 0 59 64 0 1 1
inet_peer_cache 0 0 48 0 0 1
ip_dst_cache 4 22 176 1 1 1
arp_cache 1 40 96 1 1 1
blkdev_requests 512 520 96 13 13 1
jffs2_inode_cache 27 169 20 1 1 1
jffs2_node_frag 342 406 16 2 2 1
jffs2_raw_node_ref 584 609 16 3 3 1
jffs2_tmp_dnode 0 508 12 0 2 1
jffs2_raw_inode 0 56 68 0 1 1
jffs2_raw_dirent 0 0 40 0 0 1
jffs2_full_dnode 347 406 16 2 2 1
dnotify_cache 0 0 20 0 0 1
file_lock_cache 0 42 92 0 1 1
fasync_cache 0 0 16 0 0 1
uid_cache 0 0 32 0 0 1
skbuff_head_cache 6 24 160 1 1 1
sock 13 18 864 2 2 2
sigqueue 0 29 132 0 1 1
kiobuf 0 0 64 0 0 1
cdev_cache 70 78 48 1 1 1
bdev_cache 3 59 64 1 1 1
mnt_cache 9 59 64 1 1 1
inode_cache 177 184 464 23 23 1
dentry_cache 204 210 112 6 6 1
filp 38 70 112 2 2 1
names_cache 0 2 4096 0 2 1
buffer_head 432 440 96 11 11 1
mm_struct 10 35 112 1 1 1
vm_area_struct 0 0 80 0 0 1
fs_cache 9 113 32 1 1 1
files_cache 10 18 416 2 2 1
signal_act 12 15 1296 4 5 1
size-1048576(DMA) 0 0 1048576 0 0 256
size-1048576 1 1 1048576 1 1 256
size-524288(DMA) 0 0 524288 0 0 128
size-524288 2 2 524288 2 2 128
size-262144(DMA) 0 0 262144 0 0 64
size-262144 0 0 262144 0 0 64
size-131072(DMA) 0 0 131072 0 0 32
size-131072 3 3 131072 3 3 32
size-65536(DMA) 0 0 65536 0 0 16
size-65536 14 14 65536 14 14 16
size-32768(DMA) 0 0 32768 0 0 8
size-32768 19 19 32768 19 19 8
size-16384(DMA) 0 0 16384 0 0 4
size-16384 27 27 16384 27 27 4
size-8192(DMA) 0 0 8192 0 0 2
size-8192 42 43 8192 42 43 2
size-4096(DMA) 0 0 4096 0 0 1
size-4096 313 313 4096 313 313 1
size-2048(DMA) 0 0 2048 0 0 1
size-2048 14 18 2048 7 9 1
size-1024(DMA) 0 0 1024 0 0 1
size-1024 13 16 1024 4 4 1
size-512(DMA) 0 0 512 0 0 1
size-512 3 8 512 1 1 1
size-256(DMA) 0 0 256 0 0 1
size-256 15 30 256 1 2 1
size-128(DMA) 0 0 128 0 0 1
size-128 842 870 128 29 29 1
size-64(DMA) 0 0 64 0 0 1
size-64 90 118 64 2 2 1
size-32(DMA) 0 0 32 0 0 1
size-32 1055 1130 32 10 10 1
#
Total of buffers = 6,6 Mbytes that is different from the 9Mbytes 'used'
reported by meminfo.
# cat /proc/meminfo
total: used: free: shared: buffers: cached:
Mem: 13246464 9072640 4173824 0 229376 1744896
Swap: 0 0 0
MemTotal: 12936 kB
MemFree: 4076 kB
MemShared: 0 kB
Buffers: 224 kB
Active: 572 kB
Inactive: 1356 kB
HighTotal: 0 kB
HighFree: 0 kB
LowTotal: 12936 kB
LowFree: 4076 kB
SwapTotal: 0 kB
SwapFree: 0 kB
#
_______________________________________________
uClinux-dev mailing list
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev