Showing results for 
Search instead for 
Did you mean: 

Memory leak with event manager running TCL script (sixxs heartbeat)?




I'm currently running a 1905 with IOS 15.3(3)M3 that has a IPv6 tunnel. This tunnel is provided by sixxs and needs a heartbeat to work, since I don't have a static IPv4.


There is a TCL implementation of this heartbeat signal which is in fact a very basic hashed UDP "ping". The script and source can be found at


The issue I have is, I'm running into "out of memory" messages that I sadly didn't record.

What I noticed is that after a fresh reboot the router shows >8.000.000b of largest free memory block - currently it's at 4.900.000

With "scripting tcl low-memory 2048000" I've made the router send the heartbeat for a longer time but it continuously "eats" RAM.


Also strange:

A sh mem | in TCL shows a lot of these lines, with the last HEX value (size?) being the same value.


29EDBD58 0000016544 29ED90D8 29EDFE28 001  -------- -------- 23FD8218  TCL Chunks
29EE5C1C 0000016544 29EE256C 29EE9CEC 001  -------- -------- 23FD8218  TCL Chunks
29EF41D8 0000016544 29EF4178 29EF82A8 001  -------- -------- 23FD8218  TCL Chunks
29EFC280 0000016544 29EF82A8 29F00350 001  -------- -------- 23FD8218  TCL Chunks
29F03644 0000016544 29F00350 29F07714 001  -------- -------- 23FD8218  TCL Chunks
29F08BE8 0000018672 29F08300 29F0D508 001  -------- -------- 23FD8218  TCL Chunks
29F0D508 0000016544 29F08BE8 29F115D8 001  -------- -------- 23FD8218  TCL Chunks
29F13E70 0000016544 29F13DCC 29F17F40 001  -------- -------- 23FD8218  TCL Chunks
29F19B10 0000016544 29F17F40 29F1DBE0 001  -------- -------- 23FD8218  TCL Chunks
29F1DBE0 0000016544 29F19B10 29F21CB0 001  -------- -------- 23FD8218  TCL Chunks
29F24304 0000016544 29F21CB0 29F283D4 001  -------- -------- 23FD8218  TCL Chunks
29F283D4 0000016544 29F24304 29F2C4A4 001  -------- -------- 23FD8218  TCL Chunks



How can I "clear" this memory usage?




2 Replies 2

Vinod Arya
Cisco Employee
Cisco Employee

If this is a memory leak, it can be a bug. Usually difficult to clear the memory, except by killing process, not very robust on IOS or reload is ultimate solution.

You should ideally share following details from your device for more insight :

- show proc memory sorted
- show mem all totals
- show log
- show event manager policy active detail
- show event manager history events
- show event manager history traps
- show run | in snmp-server

If snmp-server manager is configured, can you remove it for testing and see the memory leak stops?



-Thanks Vinod **Rating Encourages contributors, and its really free. **

Usually difficult to clear the memory, except by killing process, not very robust on IOS or reload is ultimate solution.

Do I understand correctly:  I cannot kill the process(es) and reload is the only workaround?


> - show proc memory sorted


> - show mem all totals


> - show log

contained nothing - still enough ram to execute the script ...

> - show event manager policy active detail

contained nothing

- show event manager history events


- show event manager history traps

contains nothing

- show run | in snmp-server

no snmp configured.





Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Recognize Your Peers