Re: [mpich-discuss] [OMPI users] OpenMPI 1.8.4rc3, 1.6.5 and 1.6.3: segmentation violation in mca_io_romio_dist_MPI_File_close
Hi! Here is a "poor man's fix" that works for me (the idea is not from me, thanks to Thomas H.): #1- char* lCwd = getcwd(0,0); #2- chdir(lPathToFile); #3- MPI_File_open(...,lFileNameWithoutTooLongPath,...); #4- chdir(lCwd); #5- ... I think there are some limitations but it works very well for our uses... and until a "real" fix is proposed... Thanks for helping! Eric On 12/15/2014 11:42 PM, Gilles Gouaillardet wrote:
Eric and all,
That is clearly a limitation in romio, and this is being tracked at https://trac.mpich.org/projects/mpich/ticket/2212
in the mean time, what we can do in OpenMPI is update mca_io_romio_file_open() and fails with a user friendly error message if strlen(filename) is larger that 225.
Cheers,
Gilles
On 2014/12/16 12:43, Gilles Gouaillardet wrote:
Eric,
thanks for the simple test program.
i think i see what is going wrong and i will make some changes to avoid the memory overflow.
that being said, there is a hard coded limit of 256 characters, and your path is bigger than 300 characters. bottom line, and even if there is no more memory overflow, that cannot work as expected.
i will report this to the mpich folks, since romio is currently imported from mpich.
Cheers,
Gilles
On 2014/12/16 0:16, Eric Chamberland wrote:
Hi Gilles,
just created a very simple test case!
with this setup, you will see the bug with valgrind:
export too_long=./this/is/a_very/long/path/that/contains/a/not/so/long/filename/but/trying/to/collectively/mpi_file_open/it/you/will/have/a/memory/corruption/resulting/of/invalide/writing/or/reading/past/the/end/of/one/or/some/hidden/strings/in/mpio/Simple/user/would/like/to/have/the/parameter/checked/and/an/error/returned/or/this/limit/removed
mpicc -o bug_MPI_File_open_path_too_long bug_MPI_File_open_path_too_long.c
mkdir -p $too_long echo "header of a text file" > $too_long/toto.txt
mpirun -np 2 valgrind ./bug_MPI_File_open_path_too_long $too_long/toto.txt
and watch the errors!
unfortunately, the memory corruptions here doesn't seem to segfault this simple test case, but in my case, it is fatal and with valgrind, it is reported...
OpenMPI 1.6.5, 1.8.3rc3 are affected
MPICH-3.1.3 also have the error!
thanks,
Eric
_______________________________________________ users mailing list [email protected] Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users Link to this post: http://www.open-mpi.org/community/lists/users/2014/12/26005.php
users mailing list [email protected] Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users Link to this post: http://www.open-mpi.org/community/lists/users/2014/12/26006.php
_______________________________________________ discuss mailing list [email protected] To manage subscription options or unsubscribe: https://lists.mpich.org/mailman/listinfo/discuss
participants (1)
-
Eric Chamberland