Mike Hearn mh@codeweavers.com writes:
Put code which dumps the maps list when the process heap can't be created, ie something like:
{ char buffer[100]; sprintf(buffer, "cat /proc/%d/maps", getpid(); system(buffer); }
and see what is sitting at the place we're trying to create the heap.
The process heap can be placed anywhere, this isn't the cause of the problem. You are confusing it with the shared heap.