- **Comment**:
Reproduced in develop branch.
~~~
==487== Invalid read of size 1
==487== at 0x4843B60: __memcpy_chk (in
/usr/lib/x86_64-linux-gnu/valgrind/vgpreload_memcheck-amd64-linux.so)
==487== by 0x4891FE3: memcpy (string_fortified.h:34)
==487== by 0x4891FE3: ncs_patricia_tree_getnext (patricia.c:491)
==487== by 0x48AADF8: mds_subtn_res_tbl_query_next_active (mds_c_db.c:2681)
==487== by 0x48BBC7D: mds_svc_op_vdest_mxn_active_delete (mds_svc_op.c:1199)
==487== by 0x48BBC7D: mds_svc_op_down (mds_svc_op.c:861)
==487== by 0x48A60DB: mds_mcm_svc_down (mds_c_api.c:1305)
==487== by 0x48B68EF: mds_mdtm_process_recvdata (mds_dt_trans.c:1150)
==487== by 0x48B78DE: mdtm_process_poll_recv_data_tcp (mds_dt_trans.c:903)
==487== by 0x48B7D0E: mdtm_process_recv_events_tcp (mds_dt_trans.c:995)
==487== by 0x48FE608: start_thread (pthread_create.c:477)
==487== by 0x4A38132: clone (clone.S:95)
==487== Address 0x4eb04c7 is 55 bytes inside a block of size 408 free'd
==487== at 0x483CA3F: free (in
/usr/lib/x86_64-linux-gnu/valgrind/vgpreload_memcheck-amd64-linux.so)==487==
by 0x48AA282: mds_subtn_res_tbl_del (mds_c_db.c:2051)
==487== by 0x48B99F8: mds_svc_op_subtn_res_tbl_del (mds_svc_op.c:1667)
==487== by 0x48BBA3A: mds_svc_op_vdest_mxn_active_delete (mds_svc_op.c:1169)
==487== by 0x48BBA3A: mds_svc_op_down (mds_svc_op.c:861)
==487== by 0x48A60DB: mds_mcm_svc_down (mds_c_api.c:1305)
==487== by 0x48B68EF: mds_mdtm_process_recvdata (mds_dt_trans.c:1150)
==487== by 0x48B78DE: mdtm_process_poll_recv_data_tcp (mds_dt_trans.c:903)
==487== by 0x48B7D0E: mdtm_process_recv_events_tcp (mds_dt_trans.c:995)
==487== by 0x48FE608: start_thread (pthread_create.c:477)
==487== by 0x4A38132: clone (clone.S:95)
==487== Block was alloc'd at
==487== at 0x483DD99: calloc (in
/usr/lib/x86_64-linux-gnu/valgrind/vgpreload_memcheck-amd64-linux.so)
==487== by 0x48A9F76: mds_subtn_res_tbl_add (mds_c_db.c:1857)
==487== by 0x48B9980: mds_svc_op_subtn_res_tbl_add (mds_svc_op.c:1660)
==487== by 0x48BB401: mds_svc_op_vdest_mxn_active_add (mds_svc_op.c:906)
==487== by 0x48BB401: mds_svc_op_up (mds_svc_op.c:726)
==487== by 0x48A604B: mds_mcm_svc_up (mds_c_api.c:1266)
==487== by 0x48B678F: mds_mdtm_process_recvdata (mds_dt_trans.c:1137)
==487== by 0x48B78DE: mdtm_process_poll_recv_data_tcp (mds_dt_trans.c:903)
==487== by 0x48B7D0E: mdtm_process_recv_events_tcp (mds_dt_trans.c:995)
==487== by 0x48FE608: start_thread (pthread_create.c:477)
==487== by 0x4A38132: clone (clone.S:95)
~~~
Reproduce steps:
1. Apply the test case patch
2. Build and deploy OpenSAF.
3. Run the following command inside a node:
`valgrind --error-exitcode=1 --leak-check=no mdstest 4 13`
---
** [tickets:#3324] mds: valgrind detected an invalid read**
**Status:** assigned
**Milestone:** 5.22.11
**Created:** Mon Oct 31, 2022 07:04 AM UTC by Hieu Hong Hoang
**Last Updated:** Mon Oct 31, 2022 07:18 AM UTC
**Owner:** Hieu Hong Hoang
Valgrind has detected an invalid read from OpenSAF 5.22.06
* Invalid read:
~~~
Object /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so
Function __memcpy_chk
File/Line
Object /usr/lib64/libopensaf_core.so.0.2.0
Function memcpy
File/Line /usr/include/bits/string3.h:53
Object /usr/lib64/libopensaf_core.so.0.2.0
Function ncs_patricia_tree_getnext
File/Line opensaf/src/base/patricia.c:491
Object /usr/lib64/libopensaf_core.so.0.2.0
Function mds_subtn_res_tbl_query_next_active
File/Line opensaf/src/mds/mds_c_db.c:2680
Object /usr/lib64/libopensaf_core.so.0.2.0
Function mds_mcm_svc_down
File/Line opensaf/src/mds/mds_c_api.c:3862
Object /usr/lib64/libopensaf_core.so.0.2.0
Function mdtm_process_discovery_events
File/Line opensaf/src/mds/mds_dt_tipc.c:1431
Object /usr/lib64/libopensaf_core.so.0.2.0
Function mdtm_process_recv_events
File/Line opensaf/src/mds/mds_dt_tipc.c:943
Object /lib64/libpthread-2.22.so
Function start_thread
File/Line
Object /lib64/libc-2.22.so
Function clone
File/Line
~~~
* Memory is freed:
~~~
Object /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so
Function free
File/Line
Object /usr/lib64/libopensaf_core.so.0.2.0
Function mds_subtn_res_tbl_del
File/Line opensaf/src/mds/mds_c_db.c:2051
Object /usr/lib64/libopensaf_core.so.0.2.0
Function mds_mcm_svc_down
File/Line opensaf/src/mds/mds_c_api.c:3862
Object /usr/lib64/libopensaf_core.so.0.2.0
Function mdtm_process_discovery_events
File/Line opensaf/src/mds/mds_dt_tipc.c:1431
Object /usr/lib64/libopensaf_core.so.0.2.0
Function mdtm_process_recv_events
File/Line opensaf/src/mds/mds_dt_tipc.c:943
Object /lib64/libpthread-2.22.so
Function start_thread
File/Line
Object /lib64/libc-2.22.so
Function clone
File/Line
~~~
---
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