Hello Christian, thank you for clarification.
Any other approach of "guessing maybe unused address regions" is designed to fail sooner or later. Imagine libraries that also map dataspaces dynamically for pointer-based data access for example.
I try to port «in more correct way» code from golang runtime. It do not assume any particular address, anyway, it actively use mmap as a probe to try to setup so called «arena space» where they make internal allocation. so, they do not try to guess exact layouts, they just have a set of pre-defined addresses where they try to place mapping.
of course, they assume that some of the attempts can fail and try other places… I think that this is relatively safe approach, and I want to have genode mmap with ANON flag works in such a way that I do not need to correct the golang runtime. to check I found abstract mmap test suit and try to apply it. so… partially it works =)
I think that I will stop activities here, allowing free/remap only own ANON mmap allocations, this will be enough for basic golang runtime.
Sincerely, Alexander