public inbox for libc-hacker@sourceware.org
 help / color / mirror / Atom feed
* Emacs dired problem triggered by NPTL-enabled glibc
@ 2003-12-16 20:02 David Mosberger
  2003-12-18  2:44 ` Ulrich Drepper
  0 siblings, 1 reply; 5+ messages in thread
From: David Mosberger @ 2003-12-16 20:02 UTC (permalink / raw)
  To: libc-hacker

On Debian/testing, I noticed that I can no longer load a directory via
dired.  The root-cause of the problem appears to be that Emacs uses
setrlimit() to set RLIMIT_STACK.  This limit won't be
page-size-aligned in general.  As a result, whenever Emacs ends up
spawning a subprocess for an executable that uses NPTL, the subprocess
fails with an error like this:

  init.c:259: __pthread_initialize_minimal_internal: Assertion `__default_stacksize % __sysconf (_SC_PAGESIZE) == 0' failed.

__default_stacksize is initialized like this:

 #ifdef NEED_SEPARATE_REGISTER_STACK
   __default_stacksize = MAX (limit.rlim_cur / 2, PTHREAD_STACK_MIN);
 #else
   __default_stacksize = MAX (limit.rlim_cur, PTHREAD_STACK_MIN);
 #endif

An easy workaround is to start Emacs with LD_ASSUME_KERNEL=2.4.18.

As far as I know, there is no requirement that the RLIMIT_STACK limit
must be an integer-multiple of the page size (and certainly it doesn't
have an integer-multiple of _twice_ the page-size), so it would seem
to me that this is a bug in glibc?

	--david

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2003-12-29 23:33 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-12-16 20:02 Emacs dired problem triggered by NPTL-enabled glibc David Mosberger
2003-12-18  2:44 ` Ulrich Drepper
2003-12-18  2:58   ` David Mosberger
2003-12-23 23:07     ` Roland McGrath
2003-12-29 23:33       ` David Mosberger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).