Wine needs some mmap improvements
|Reported by:||AndreH||Owned by:||bonefish|
rev. 44678 in VirtualBox
As Wine code occasionally relies on the Linux behaviour, e.g. to be able to map non-relocatable PE executables to their proper start addresses, or to map the DOS memory to 0, we need some mmap  changes on Haiku to give Wine a chance to run.
I attached a strace log that shows what's happening when you try to run Wine. Wine wants to mmap 0x7ffe0000 with reserve_area  and get's pointers back like 0x80000000 or 0x00002305.
So what we need from Haiku is MAP_TRYFIXED and some free memory areas. i'd say we are talking about: 0x00000000-0x00010000 (maybe) 0x00110000-0x40000000 0x7ffe0000-0x80000000 and most likely more
We are lucky here, with BeOS it didn't work as the kernel was in the lower space, Haiku doesn't do this, that's great. I've put some information together at  and i'll try to get as much changes into upstream Wine to let it run on Haiku. Still i kindly ask you to do something about this bug, otherwise i can't argue to get my changes in.
 http://source.winehq.org/git/wine.git/blob/479b7bcf604f40929b1f600f31f8d7dfc8b6c991:/libs/wine/mmap.c#l251  http://wiki.winehq.org/Haiku  http://code.metager.de/source/xref/haiku/src/system/libroot/posix/sys/mman.cpp#89
Change History (17)
comment:1 by , 8 years ago
|Component:||- General → System/Kernel|
|Status:||new → assigned|