Perhaps. Though I don't see what your loop would be doing;
and the mapping established by the first thread would only
be vulnerable to another thread if that were really set on
interfering (an un-FIXED mmap by another thread will keep
away from the area assigned to the first).
Certainly a two-stage procedure has to be weaker than one stage,
but it is just how MAP_FIXED is normally used (isn't it?): first
stake out an arena for all that's needed without MAP_FIXED, then
fit into it the actual mappings required using MAP_FIXED. Blind
use of MAP_FIXED is always in danger of unmapping something vital.
But whether the two-stage procedure is good enough for Thayne's
purpose, he'll have to judge for himself.
Hugh
-