# # These are from Criterion and should be fixed in a subsequent version # { calloc_criterion_run_all_tests Memcheck:Leak match-leak-kinds: definite fun:calloc fun:_dl_allocate_tls fun:pthread_create@@GLIBC_2.2.5 fun:init_proc_compat fun:criterion_run_all_tests_impl fun:criterion_run_all_tests fun:main } { malloc_criterion_runn_all_tests Memcheck:Leak match-leak-kinds: definite fun:malloc fun:alloc_entry fun:smalloc_impl fun:smalloc fun:test_stats_init fun:run_next_test fun:run_tests_async fun:criterion_run_all_tests_impl fun:criterion_run_all_tests fun:main } # # These are leaks from getifaddrs in the sockets provider. # { getifaddrs_criterion_run_all_tests Memcheck:Leak match-leak-kinds: definite fun:calloc fun:getifaddrs_internal fun:getifaddrs } # # This is an actual memory leak in uGNI. A bug has been submitted # { cq_vector_wait_event_leak Memcheck:Leak match-leak-kinds: definite fun:malloc fun:cq_vector_wait_event ... } # # These are benign # { dgram_handle_alloc Memcheck:Leak match-leak-kinds: definite fun:calloc fun:_dl_allocate_tls fun:pthread_create@@GLIBC_2.2.5 fun:_gnix_dgram_hndl_alloc fun:_gnix_cm_nic_alloc fun:_gnix_ep_nic_init fun:gnix_ep_open fun:fi_endpoint } # # This is due to not initializing unused attr fields in struct # gnix_pep_sock_connreq # # { # fi_connect_memcheck # Memcheck:Param # write(buf) # obj:/lib64/libpthread-2.11.3.so # fun:gnix_connect # fun:fi_connect # ... # } # # This is due to not initializing all or part the eqe_buf field in # struct gnix_pep_sock_connresp. This is fine, as the amount data # needed is given by the cm_data_len field. # { fi_accept_memcheck Memcheck:Param write(buf) obj:/lib64/libpthread-2.11.3.so fun:gnix_accept fun:fi_accept ... } # # These are from specifying an additional .init function for a test # (there's no way to specify a replacement .init function with # Criterion). # { dg_allocation::dgram_wc_post_exchg_manual-1 Memcheck:Leak match-leak-kinds: definite fun:calloc fun:fi_allocinfo_internal fun:fi_dupinfo@@FABRIC_1.0 fun:fi_allocinfo fun:dg_setup ... } { dg_allocation::dgram_wc_post_exchg_manual-2 Memcheck:Leak match-leak-kinds: definite fun:calloc fun:fi_allocinfo_internal fun:fi_dupinfo@@FABRIC_1.0 fun:fi_allocinfo fun:gnix_getinfo fun:fi_getinfo@@FABRIC_1.0 fun:dg_setup ... } { cq_msg::multi_sread_setup-1 Memcheck:Leak match-leak-kinds: definite fun:calloc fun:gnix_fabric_open fun:setup fun:cq_wait_none_setup ... } { cq_msg::multi_sread_setup-2 Memcheck:Leak match-leak-kinds: definite fun:calloc fun:fi_allocinfo_internal fun:fi_dupinfo@@FABRIC_1.0 fun:fi_allocinfo fun:setup fun:cq_wait_none_setup ... } { cq_msg::multi_sread_setup-3 Memcheck:Leak match-leak-kinds: definite fun:calloc fun:fi_allocinfo_internal fun:fi_dupinfo@@FABRIC_1.0 fun:fi_allocinfo fun:gnix_getinfo fun:fi_getinfo@@FABRIC_1.0 fun:setup fun:cq_wait_none_setup ... } { cq_msg::multi_sread_setup-4 Memcheck:Leak match-leak-kinds: definite fun:calloc fun:gnix_cq_open fun:fi_cq_open fun:cq_create fun:criterion_internal_test_setup ... } # # This is from the av multithreaded tests that pass void * args via pthread-create # { atomic_cas_weak_continuous_remove Memcheck:Cond fun:atomic_cas_weak fun:continuous_remove fun:start_thread } # # This is from reading kernel initialized memory # { gnix_notifier_get_event Memcheck:Addr8 fun:_gnix_notifier_get_event ... } # # These are due to writing a subset of the bytes in a word, but the # compiler reading a whole word in the generated code. # { rdm_rma_readmsg_check_data Memcheck:Cond fun:check_data fun:do_readmsg_more fun:do_read_alignment_more ... } { rdm_rma_read_alignment_check_data Memcheck:Cond fun:check_data fun:do_read_buf fun:do_read_alignment fun:xfer_for_each_size ... } { rdm_src_check_data_multirecv Memcheck:Cond fun:rdm_sr_check_data fun:do_multirecv fun:rdm_sr_xfer_for_each_size ... } { rdm_sr_check_data_multirecv_send_first Memcheck:Cond fun:rdm_sr_check_data fun:do_multirecv_send_first fun:rdm_sr_xfer_for_each_size ... } { rdm_sr_check_data_sendrecv_buf Memcheck:Cond fun:rdm_sr_check_data fun:do_sendrecv_buf fun:do_sendrecv_alignment fun:rdm_sr_xfer_for_each_size ... } # # These are from uGNI itself # { ioctl_cq_create Memcheck:Param ioctl(generic) fun:ioctl fun:cq_create ... } { ioctl_GNI_MemRegister Memcheck:Param ioctl(generic) fun:ioctl fun:GNI_MemRegister ... } { ioctl_GNI_EpPostDataWId Memcheck:Param ioctl(generic) fun:ioctl fun:GNI_EpPostDataWId ... } { ioctl_gni_fma_assign Memcheck:Param ioctl(generic) fun:ioctl fun:gni_fma_assign ... } { GNI_EpPostDataTestById Memcheck:Addr4 fun:GNI_EpPostDataTestById ... } { GNI_PostDataProbeById Memcheck:Addr4 fun:GNI_PostDataProbeById ... } { GNI_CqGetEvent Memcheck:Addr8 fun:GNI_CqGetEvent ... } { GNII_DlaProgress Memcheck:Addr8 fun:GNII_DlaProgress ... } { GNII_DLA_PROGRESS_NOLOCK Memcheck:Addr8 fun:GNII_DLA_PROGRESS_NOLOCK ... } { gni_fma_assign Memcheck:Addr4 fun:gni_fma_assign ... } { GNII_POST_FMA_GET Memcheck:Addr8 fun:GNII_POST_FMA_GET ... } { GNII_FmaGetWithMode Memcheck:Addr4 fun:GNII_FmaGetWithMode ... } { GNII_FmaGetWithMode Memcheck:Addr8 fun:GNII_FmaGetWithMode ... } { GNII_GenAllocSeqid Memcheck:Addr8 fun:GNII_GenAllocSeqid ... } { GNII_PostRdma Memcheck:Addr4 fun:GNII_PostRdma ... } { GNII_PostRdma Memcheck:Addr8 fun:GNII_PostRdma ... } { GNII_PostFlbte Memcheck:Addr4 fun:GNII_PostFlbte ... } { GNII_PostFlbte Memcheck:Addr8 fun:GNII_PostFlbte ... } { GNII_FmaPut Memcheck:Addr8 fun:GNII_FmaPut ... } { GNII_FmaPut Memcheck:Addr4 fun:GNII_FmaPut ... } { GNII_SmsgSend Memcheck:Addr8 fun:GNII_SmsgSend ... } { GNII_SmsgSend Memcheck:Addr4 fun:GNII_SmsgSend ... } { GNII_SmsgSend Memcheck:Addr2 fun:GNII_SmsgSend ... } { GNII_SmsgSend Memcheck:Addr1 fun:GNII_SmsgSend ... } { GNII_POST_FMA_PUT Memcheck:Addr8 fun:GNII_POST_FMA_PUT ... } { GNII_POST_FMA_PUT Memcheck:Addr4 fun:GNII_POST_FMA_PUT ... } { GNII_POST_FMA_PUT Memcheck:Addr2 fun:GNII_POST_FMA_PUT ... } { GNII_POST_FMA_PUT Memcheck:Addr1 fun:GNII_POST_FMA_PUT ... } { GNI_PostFma Memcheck:Addr8 fun:GNI_PostFma ... } { GNII_POST_AMO Memcheck:Addr4 fun:GNII_POST_AMO ... } { GNII_POST_AMO Memcheck:Addr8 fun:GNII_POST_AMO ... } { GNI_PostFma Memcheck:Addr8 fun:GNI_PostFma ... } { return_back_credits Memcheck:Addr8 fun:return_back_credits ... } { GNI_CqTestEvent Memcheck:Addr8 fun:GNI_CqTestEvent ... } { cq_vector_wait_event Memcheck:Addr4 fun:cq_vector_wait_event ... } { cq_vector_wait_event Memcheck:Addr8 fun:cq_vector_wait_event ... } { ioctl_cq_vector_wait_event Memcheck:Param ioctl(generic) fun:ioctl ... } { GNII_CqPeek Memcheck:Addr8 fun:GNII_CqPeek ... } { GNII_PostCqWrite Memcheck:Addr8 fun:GNII_PostCqWrite fun:GNI_PostCqWrite ... } { GNII_PostCqWrite Memcheck:Addr4 fun:GNII_PostCqWrite fun:GNI_PostCqWrite ... } { UDREG_BUG_841637_1 Memcheck:Leak match-leak-kinds: reachable fun:malloc fun:ckalloc fun:avl_insert ... } { UDREG_BUG_841637_2 Memcheck:Leak match-leak-kinds: definite fun:malloc fun:ckalloc fun:avlinit fun:UDREG_CacheCreate ... } { UDRED_BUG_841637_3 Memcheck:Leak match-leak-kinds: reachable fun:malloc fun:UDREG_Register ... }