Detecting ulimit problem
bobl at optushome.com.au
Fri May 20 19:05:14 CDT 2005
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.
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.
More information about the wine-devel