- **status**: review --> fixed
- **Comment**:
commit def430e1afe0b67677bce966428ea1ede3913fa3 (HEAD -> develop,
origin/develop, ticket-3145)
Author: thuan.tran <[email protected]>
Date: Tue Jan 21 13:19:00 2020 +0700
mds: Fix mds memleak detect via mdstest [#3145]
- Function tet_mds_cb_enc/dec (default for broadcast type) encode/decode
received messages use 16 bits for message length but mdstest verify
broadcast
big message size 66000 (> 16bits) which cause decode incorrect length and
memory does not free properly due to get wrong message length.
- Also, there is a case that mds library already posting mailbox messages
(if mds_q_ownership true), but mds client does not retrieve it then
uninstall
mds, a proper cleanup callback is needed to cleanup these mailbox messages.
---
** [tickets:#3145] mds: memleak detect through valgrind mdstest**
**Status:** fixed
**Milestone:** 5.20.01
**Created:** Tue Jan 21, 2020 09:06 AM UTC by Thuan Tran
**Last Updated:** Mon Feb 03, 2020 01:47 AM UTC
**Owner:** Thuan Tran
Some 'definitely lost' detected in valgrind report run for mdstest
~~~
mdstest.2224.valgrind.xml:==2224== 400 bytes in 1 blocks are definitely lost in
loss record 6 of 7
mdstest.2224.valgrind.xml-==2224== at 0x4C31B25: calloc (in
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
mdstest.2224.valgrind.xml-==2224== by 0x5096D05: mds_mcm_user_event_callback
(mds_c_api.c:4594)
mdstest.2224.valgrind.xml-==2224== by 0x509932A: mds_mcm_svc_down
(mds_c_api.c:4058)
mdstest.2224.valgrind.xml-==2224== by 0x50A8CD4: mds_mdtm_process_recvdata
(mds_dt_trans.c:1150)
mdstest.2224.valgrind.xml-==2224== by 0x50A9D86:
mdtm_process_poll_recv_data_tcp (mds_dt_trans.c:903)
mdstest.2224.valgrind.xml-==2224== by 0x50AA19E:
mdtm_process_recv_events_tcp (mds_dt_trans.c:995)
mdstest.2224.valgrind.xml-==2224== by 0x52E96DA: start_thread
(pthread_create.c:463)
mdstest.2224.valgrind.xml-==2224== by 0x562288E: clone (clone.S:95)
~~~
~~~
mdstest.1949.valgrind.xml:==1949== 161,440 (112 direct, 161,328 indirect) bytes
in 2 blocks are definitely lost in loss record 12 of 12
mdstest.1949.valgrind.xml-==1949== at 0x4C2FB0F: malloc (in
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
mdstest.1949.valgrind.xml-==1949== by 0x5085F1B: sysf_alloc_pkt
(sysf_mem.c:429)
mdstest.1949.valgrind.xml-==1949== by 0x507528F: ncs_enc_init_space_pp
(hj_ubaid.c:144)
mdstest.1949.valgrind.xml-==1949== by 0x50A5356: mdtm_fill_data
(mds_dt_common.c:1446)
mdstest.1949.valgrind.xml-==1949== by 0x50A6114:
mdtm_process_recv_message_common (mds_dt_common.c:806)
mdstest.1949.valgrind.xml-==1949== by 0x50A6A3C: mdtm_process_recv_data
(mds_dt_common.c:1406)
mdstest.1949.valgrind.xml-==1949== by 0x50A8B46: mds_mdtm_process_recvdata
(mds_dt_trans.c:1217)
mdstest.1949.valgrind.xml-==1949== by 0x50A9D86:
mdtm_process_poll_recv_data_tcp (mds_dt_trans.c:903)
mdstest.1949.valgrind.xml-==1949== by 0x50AA19E:
mdtm_process_recv_events_tcp (mds_dt_trans.c:995)
mdstest.1949.valgrind.xml-==1949== by 0x52E96DA: start_thread
(pthread_create.c:463)
~~~
---
Sent from sourceforge.net because [email protected] is
subscribed to https://sourceforge.net/p/opensaf/tickets/
To unsubscribe from further messages, a project admin can change settings at
https://sourceforge.net/p/opensaf/admin/tickets/options. Or, if this is a
mailing list, you can unsubscribe from the mailing list._______________________________________________
Opensaf-tickets mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-tickets