cburstedde / libsc

The "sc" auxiliary library
www.p4est.org/
GNU Lesser General Public License v2.1
35 stars 34 forks source link

sc_io: Remove zcount == 0 corner case #138

Closed tim-griesbach closed 11 months ago

tim-griesbach commented 11 months ago

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.