[Mpi3-rma] Lock/Unlock semantics
All - I'm finally doing the implementation of MPI-3 RMA in Open MPI using our generic low level driver (rather than directly on Portals4) and have a question about semantics. It appears to me that process B could attempt to lock process A multiple times simultaneously, including a mix of EXCLUSIVE and SHARED locks. Does this appear correct to others? If not, what in the standard prevents such behavior? If it is correct, how are UNLOCK calls matched to the various LOCK calls? I didn't really run into this in the Portals4 implementation, because LOCK calls blocking in that implementation. I never even thought about the potential for issue, because there was no lock ordering issue; one could only be in one lock type simultaneously. And I'm not sure I fully comprehended the potential problem. However, in the generic implementation, I've made lock non-blocking and now I run into this odd semantics situation. Thoughts? Brian -- Brian W. Barrett Dept. 1423: Scalable System Software Sandia National Laboratories
participants (1)
-
Barrett, Brian W