Re: [petsc-dev] use of uninitialized values in PetscSF
Barry Smith <[email protected]> writes:
Is there any way to fix this use of uninitialized values?
Hmm, I don't think it's something we have any control over. I could try making a reduced test case to put in MPICH's test suite. Is this with the latest version of MPICH?
9a10,67
==31141== Syscall param writev(vector[...]) points to uninitialised byte(s) ==31141== at 0xD164CDB: writev (writev.c:51) ==31141== by 0xCB13596: MPL_large_writev (mplsock.c:32) ==31141== by 0xCB02DC9: MPIDU_Sock_writev (sock_immed.i:610) ==31141== by 0xCAC00DD: MPIDI_CH3_iStartMsgv (ch3_istartmsgv.c:110) ==31141== by 0xCA7DC91: recv_rma_msg (ch3u_rma_sync.c:2198) ==31141== by 0xCA79CB6: MPIDI_Win_fence (ch3u_rma_sync.c:1295) ==31141== by 0xC9AD840: PMPI_Win_fence (win_fence.c:111) ==31141== by 0x51DA7E1: PetscSFRestoreWindow (sfwindow.c:348) ==31141== by 0x51DD0C9: PetscSFBcastEnd_Window (sfwindow.c:510) ==31141== by 0x51D0B66: PetscSFBcastEnd (sf.c:1001) ==31141== by 0x401EB7: main (ex2.c:81) ==31141== Address 0xe50d12c is 108 bytes inside a block of size 208 alloc'd ==31141== at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==31141== by 0xCA7328D: MPIDI_CH3I_RMA_Ops_alloc_tail (mpidrma.h:191) ==31141== by 0xCA75A49: MPIDI_Get (ch3u_rma_ops.c:290) ==31141== by 0xC99EC9C: PMPI_Get (get.c:142) ==31141== by 0x51DCC62: PetscSFBcastBegin_Window (sfwindow.c:495) ==31141== by 0x51D03C4: PetscSFBcastBegin (sf.c:968) ==31141== by 0x401DDB: main (ex2.c:79) ==31141== Uninitialised value was created by a heap allocation ==31141== at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==31141== by 0xCA7328D: MPIDI_CH3I_RMA_Ops_alloc_tail (mpidrma.h:191) ==31141== by 0xCA75A49: MPIDI_Get (ch3u_rma_ops.c:290) ==31141== by 0xC99EC9C: PMPI_Get (get.c:142) ==31141== by 0x51DCC62: PetscSFBcastBegin_Window (sfwindow.c:495) ==31141== by 0x51D03C4: PetscSFBcastBegin (sf.c:968) ==31141== by 0x401DDB: main (ex2.c:79) ==31141== ==31142== Syscall param writev(vector[...]) points to uninitialised byte(s) ==31142== at 0xD164CDB: writev (writev.c:51) ==31142== by 0xCB13596: MPL_large_writev (mplsock.c:32) ==31142== by 0xCB02DC9: MPIDU_Sock_writev (sock_immed.i:610) ==31142== by 0xCAC00DD: MPIDI_CH3_iStartMsgv (ch3_istartmsgv.c:110) ==31142== by 0xCA7DC91: recv_rma_msg (ch3u_rma_sync.c:2198) ==31142== by 0xCA79CB6: MPIDI_Win_fence (ch3u_rma_sync.c:1295) ==31142== by 0xC9AD840: PMPI_Win_fence (win_fence.c:111) ==31142== by 0x51DA7E1: PetscSFRestoreWindow (sfwindow.c:348) ==31142== by 0x51DD0C9: PetscSFBcastEnd_Window (sfwindow.c:510) ==31142== by 0x51D0B66: PetscSFBcastEnd (sf.c:1001) ==31142== by 0x401EB7: main (ex2.c:81) ==31142== Address 0xe49d88c is 108 bytes inside a block of size 208 alloc'd ==31142== at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==31142== by 0xCA7328D: MPIDI_CH3I_RMA_Ops_alloc_tail (mpidrma.h:191) ==31142== by 0xCA75A49: MPIDI_Get (ch3u_rma_ops.c:290) ==31142== by 0xC99EC9C: PMPI_Get (get.c:142) ==31142== by 0x51DCC62: PetscSFBcastBegin_Window (sfwindow.c:495) ==31142== by 0x51D03C4: PetscSFBcastBegin (sf.c:968) ==31142== by 0x401DDB: main (ex2.c:79) ==31142== Uninitialised value was created by a heap allocation ==31142== at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==31142== by 0xCA7328D: MPIDI_CH3I_RMA_Ops_alloc_tail (mpidrma.h:191) ==31142== by 0xCA75A49: MPIDI_Get (ch3u_rma_ops.c:290) ==31142== by 0xC99EC9C: PMPI_Get (get.c:142) ==31142== by 0x51DCC62: PetscSFBcastBegin_Window (sfwindow.c:495) ==31142== by 0x51D03C4: PetscSFBcastBegin (sf.c:968) ==31142== by 0x401DDB: main (ex2.c:79) ==31142== /sandbox/petsc/petsc.clone/src/vec/is/sf/examples/tutorials Possible problem with ex2_window, diffs above
participants (1)
-
Jed Brown