pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: pkg/32800: wine can't create ~/.wine
The following reply was made to PR pkg/32800; it has been noted by GNATS.
From: dholland%eecs.harvard.edu@localhost (David Holland)
To: gnats-bugs%NetBSD.org@localhost
Cc:
Subject: Re: pkg/32800: wine can't create ~/.wine
Date: Sun, 22 Oct 2006 18:17:11 -0400 (EDT)
I've found another problem... unfortunately it's still not the whole
problem.
NetBSD's libpthread ignores the per-thread stack size that can be set
with pthread_attr_setstacksize(), and it looks like Wine relies on
this in some fashion. It's not clear to me exactly what's going on,
but:
- when it dumps core, the current thread's stack pointer is 0x7fcefe8c;
- pthread__self() constructs 0x7c000000 from this because
pthread_stacksize is 0x4000000;
- however, the bottom of the current stack as it exists in memory,
as ascertained by poking memory with gdb, is 0x7fbe0000;
- wine uses pthread_attr_setstacksize() - see wine-0.9.23/loader/pthread.c.
I tried working around this by setting $PTHREAD_STACKSIZE to 1152
(0x120000 / 1024) in the hopes that this would cause pthread__self to
return the "right" address. This allows wineprefixcreate, or rather,
the wine invocation inside it, to get past the initial SIGSEGV, but it
still doesn't work - it appears to be back to the infinite loop I was
seeing last spring after the signal fixes.
Sigh.
--
- David A. Holland / dholland%eecs.harvard.edu@localhost
Home |
Main Index |
Thread Index |
Old Index