[FreeBSD] locating wine at 0x20000000

Tijl Coosemans tijl at ulyssis.org
Mon Aug 7 06:12:52 CDT 2006


On Monday 31 July 2006 18:15, Tijl Coosemans wrote:
> On Monday 31 July 2006 16:22, Alexandre Julliard wrote:
> > Tijl Coosemans <tijl at ulyssis.org> writes:
> > > So I was thinking of moving Wine to 0x20000000. That would be the
> > > easiest solution by far, but, are there any potential problems with
> > > that?
> >
> > Yes, that's too low, apps can expect that address to be free. If you
> > can't change the 512Mb thing then you should use something around
> > 0x50000000, but really the 0x70000000 range would be preferable.
> 
> I can lower the 512Mb with setrlimit and RLIMIT_DATA, but that would 
> have to happen inside the preloader (using a direct syscall I suppose), 
> which currently isn't used on FreeBSD and probably doesn't even work. 
> So I'll add that to my todo list and use something in the 0x50000000 
> range for now.

It turns out I don't need the preloader for that...

Currently I lower RLIMIT_DATA to 0x18000000 (384Mb) in wine-glibc and
locate wine-pthread at 0x64000000. Is this an acceptable location?

There has to be enough room after wine-pthread + data segment for
every lib and dlopen'ed object. Moreover, the data segment can't be too
small because it's the malloc heap and the limit is inherited by the
wineserver process. So this is a bit of a balancing act.



More information about the wine-devel mailing list