[Wine]old Wine from CVS
Mark Knecht
markknecht at gmail.com
Sat Oct 30 10:16:59 CDT 2004
On Fri, 29 Oct 2004 20:43:50 -0700 (PDT), Walt Ogburn
<reuben at ugcs.caltech.edu> wrote:
>
> It turns out the scribbling is almost it! The crash is not the scribbling
> itself, but the "char buf[JACK_THREAD_STACK_TOUCH];". This is usually
> something huge. If you make it smaller, the crash goes away - for me, the
> critical value is 14528 (OK), 14529 (crashes). It seems that the end of
> buf is getting close to 0xC0000000 when the size of buf is 14528, and
> maybe something starts to go over.
>
> Now, I don't know anything about memory issues, so why is 0xC0000000 so
> important?
>
> If one of you who has tried compiling the doesn't-break-jack-fst version
> of wine cares to check, you might see which of the following possibilities
> is the case with the older wine: (1) buf doesn't get close to 0xC0000000;
> or (2) it does, but it's OK. I just replaced the size of buf in
> libjack/client.c: jack_activate with 14528 by hand and put in a debugging
> message like
>
> printf ("buf: base = %p, size = %d, end = %p.\n", buf, size(buf), buf+sizeof(buf));
>
> (Of course, if you don't want a crash, you should also replace
> JACK_THREAD_STACK_TOUCH with 14528 in the scribbling code!)
>
> - Walter
Very interesting. Thanks! With this I can go back to the jack_fst
developers and get them involved more effectively.
I keep coming back to what Alexandre wrote in the memo part of the
Wine update that broke this:
<SNIP>
Log message:
Added support for managing reserved memory areas in libwine and ntdll.
Try to reserve everything above 0x80000000 on startup.
<SNIP>
Is it important because all memory above 0x8000000 is now reserved by Wine?
I'll add your print statements later this morning and report back what I find.
Thanks!
- Mark
More information about the wine-users
mailing list