Why does svn_io_file_lock2() have a retry loop? The reason given in the code is that some consumer of libsvn_fs wants to run a critical section while holding a lock in each of two FSFS filesystems. In that case, why isn't the fix just to tell the consumer to, when wanting to lock N filesystems, to always lock them in a well-defined order?
Concretely: sort the filesystems by their UUID lexicographically.

