On Sat, 21 May 2005 04:40 am, Eric Frias wrote: > Mike Hearn wrote: > > On Thu, 19 May 2005 17:46:28 -0400, Eric Frias wrote: > >>I'll get a patch ready once I understand a bit more of what is going on > >>that is causing wine to reserve this memory. > > > > It's probably blocking off the top 3rd quarter of the address space to > > prevent the kernel allocating memory above the 2gig boundary (this can > > break some Windows programs). > > Thanks for the explanation. I just read over that section in the > developer's guide, and it's starting to make sense. Sounds like it > won't be straightforward to figure out *exactly* how much memory wine is > going to require, because it should amount to roughly: > > whatever the preloader reserves in the low addresses > + the size of native linux libraries not mapped in the 3rd gig > + heap used by native libraries (?) > + 1G to block off that 3rd quarter > > So the requirements of 1300 megabytes I was seeing dosn't seem that > unrealistic. I couldn't tell from the docs, but it sounds likely that > wine would also reserve the 4th quarter of the address space if the 4G > VM split patch was in effect, so wine would actually need around 2300 > megabytes of address space on those systems. > > Eric
Really we need a better way. Under Solaris I have run into these problems for well over 2 years and I have a patch in my kit that pre-allocates 64MB for the heap then lets mmap allocate over the 2 GB limit for everything else, eg DLLs and so on. This seems to work pretty well, but it's been rejected as a fix to wine. Bob