Okay, when restarting one of those operations I did earlier obviously
made Kamailio dump all its private memory information. So I grepped
everything from PID 19134 and then let the awk line from the Wiki page
run over it. Now I'm lost interpreting the results. The top usages
were those:
108 salm /usr/sbin/kamailio[19134]: WARNING: qm_status:
alloc'd from core: core/rpc_lookup.c: rpc_hash_add(100)
166 salm /usr/sbin/kamailio[19134]: WARNING: qm_status:
alloc'd from core: core/pvapi.c: pv_table_add(234)
195 salm /usr/sbin/kamailio[19134]: WARNING: qm_status:
alloc'd from core: core/cfg.lex: addstr(1382)
1844 salm /usr/sbin/kamailio[19134]: WARNING: qm_status:
alloc'd from htable: ht_var.c: pv_parse_ht_name(141)
1862 salm /usr/sbin/kamailio[19134]: WARNING: qm_status:
alloc'd from core: core/pvapi.c: pv_cache_add(272)
1887 salm /usr/sbin/kamailio[19134]: WARNING: qm_status:
alloc'd from core: core/pvapi.c: pv_parse_format(1075)
Can anybody explain what that means? When are those memory parts allocated?
As I see, those operations seem to have something to do with htables,
right now there are absolutely no write operations, but for each
packet there's at least one read operation on a hash table to see
whether something is set for this Call-ID. All htable handling is done
from my lua script. And private pseudo variables are used pretty much
read-only as well. They might get zeroed at start of processing of the
message, but right now none of them are set again later.
Thanks in advance,
Sebastian