Q HeapAlloc.
Oliver Stieber
oliver_stieber at yahoo.co.uk
Sun Jan 16 15:00:47 CST 2005
> Right, this is almost certainly a VMA layout issue.
> Try an
>
> echo 1 >/proc/sys/vm/legacy_va_layout
>
That's not there, (but my pc's a good 18 months old
VIA/AMD).
> and see if that makes any difference. Also try
> disabling execshield if
> present:
>
> echo 0 >/proc/sys/kernel/exec-shield
> echo 0 >/proc/sys/kernel/exec-shield-randomize
>
Nope, no exec-shield
> and finally do an "export LD_USE_LOAD_BIAS=0" before
> running Wine (this
> should disable prelink for that process on recent
> glibcs).
Will do, i've also tried playing with the vm settings
which didn't help. 'swappiness, overcommit_memory,
overcommit_ratio, max_map_count and min_free_kbytes
'
> Finally if you do NOT have a flex-mmap kernel, that
> may also allow the
> win32 heap to grow as much as necessary.
>
I've tried doing...
int i;
int j;
char* data;
for(i =0 ; i< 10 ; i++){
data = HeapAlloc(GetProcessHeap(),0,64*1024*1024);
/*write to the data for linux really allocates it*/
for(j = 0 ; j < 128; j++){
data[j*1024*512] = 1;
}
}
and that works ok.
> This does beg the question of how much RAM Pirates!
> expects to be able to
> allocate of course ....
>
Well, there's plenty free, and other apps can allocate
memory just fine.
I can possibly look at putting some pooling code into
DirectX to help reduce fragmentation on that side
(though there's not a lot of memory allocated, and
it's mostly in the same sized blocks), or something in
malloc so that it reports the exact failure.
> thanks -mike
>
>
Oh, I also have an ATI graphics card.
___________________________________________________________
ALL-NEW Yahoo! Messenger - all new features - even more fun! http://uk.messenger.yahoo.com
More information about the wine-devel
mailing list