In sc_io the wrapper functions for the collective I/O operations handle the case of empty write/read operations separately to avoid an uninitialized MPI status for some MPI implementations. However, the code does not check if all processes do not have something to write/read and therefore the code leads to a deadlock if, e.g. some processes hold data to write and other not.
Proposed changes: Remove separate handling since this should be MPI standard conforming and I do not observe valgrind errors due to an uninitialized MPI status for current MPI implementations.
sc_io: Remove zcount == 0 corner case
In
sc_io
the wrapper functions for the collective I/O operations handle the case of empty write/read operations separately to avoid an uninitialized MPI status for some MPI implementations. However, the code does not check if all processes do not have something to write/read and therefore the code leads to a deadlock if, e.g. some processes hold data to write and other not.Proposed changes: Remove separate handling since this should be MPI standard conforming and I do not observe valgrind errors due to an uninitialized MPI status for current MPI implementations.