NTOP Memory leak
-
$ top last pid: 48536; load averages: 0.02, 0.03, 0.08 up 2+16:18:30 12:16:31 96 processes: 1 running, 90 sleeping, 5 zombie Mem: 78M Active, 1503M Inact, 160M Wired, 112M Buf, 260M Free Swap: 2048M Total, 2048M Free PID USERNAME THR PRI NICE SIZE RES STATE TIME WCPU COMMAND 511 root 1 -8 0 24388K 23164K piperd 0:28 0.78% php 1047 proxy 19 20 0 36012K 32960K kserel 3:00 0.00% squid 672 root 1 96 0 6388K 6144K select 0:57 0.00% bsnmpd 729 root 1 8 20 1932K 1372K wait 0:38 0.00% sh 1158 zabbix 1 8 5 2592K 1292K nanslp 0:14 0.00% zabbix_agentd 491 root 1 4 0 3724K 2792K kqread 0:08 0.00% lighttpd 200 root 1 96 0 1468K 1104K select 0:05 0.00% syslogd 313 root 1 -58 0 4240K 2532K bpf 0:04 0.00% tcpdump 24045 root 1 -58 0 4100K 2052K bpf 0:04 0.00% bandwidthd 24043 root 1 -58 0 4224K 2176K bpf 0:04 0.00% bandwidthd 1128 root 1 8 0 1720K 1160K wait 0:04 0.00% sh 24042 root 1 -58 0 4224K 2176K bpf 0:04 0.00% bandwidthd 24044 root 1 -58 0 4224K 2176K bpf 0:04 0.00% bandwidthd 811 root 1 96 0 1472K 1092K select 0:03 0.00% routed 64010 root 1 8 20 1272K 720K nanslp 0:02 0.00% check_reload_status 314 root 1 -8 0 1276K 728K piperd 0:01 0.00% logger 1100 proxy 1 96 0 1604K 1120K select 0:01 0.00% pinger 554 root 1 96 0 1280K 716K select 0:01 0.00% choparp
Ntop seems to be causing a memory leak of some sort. I have 2gb of ram.. and I stopped ntop and still it shows 260mb of ram left.. I can't seem to find where the used memory is being sent to? Maybe the zombie proc?
Rebooting the firewlal solves the problem, but obviously I would love to use ntop. To be honest I'm not sure it's the ntop proc, but when viewing the rdd graphs there it seems to happen (I think?)
How do I get the missing memory back without rebooting? I don't want to reboot the firewall during working hours…
-
another screenshot from phpsys. All the memory seems to be located in the inactive part.. and It seems that it's not taking memory out of there like it's suppose to??
-
A bit off topic
It's my impression that the NTOP package is out of date and shouldn't be used before a dedicated maintainer shows up and fix it. -
That's true, but I need to figure out if it's bad or not when you have so much inactive memory and if it's being caused by ntop.
I would expect it to be transfered to the free –> physical memory.
-
Inactive memory is not 'bad'. When a program ends it's memory is placed into inactive. That is memory that is free to other programs (if they need it) but is ready to go for the ended program should you restart it.
-
The system now shows only 25mb free and about 2mb of swap being used.. while there is still almost 1600mb in the inactive..
Could it be that it's not freeing up or able to use this memory?