[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#225466: libc6.1: thread-creation fails after setting non-page-aligned stack limit



Package: libc6.1
Version: 2.3.2.ds1-10.0.1
Severity: normal
Tags: sid patch

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.

A workaround is to start Emacs with LD_ASSUME_KERNEL=2.4.18.

The proper fix is already in the CVS libc and consists of these two
patches:

 http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/nptl/init.c.diff?r1=1.42&r2=1.43&cvsroot=glibc
 http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/nptl/init.c.diff?r1=1.40&r2=1.41&cvsroot=glibc

I'd appreciate if these patches could be incorported into the Debian
libc package, so that Emacs is more usable again.

Note: I originally reported this problem for Emacs (see bug #224344),
but it is clear now that this is really a libc problem.

Thanks,

	--david

-- System Information:
Debian Release: testing/unstable
Architecture: ia64
Kernel: Linux wailua.hpl.hp.com 2.6.0 #121 Fri Dec 19 10:37:07 PST 2003 ia64
Locale: LANG=C, LC_CTYPE=C

Versions of packages libc6.1 depends on:
ii  libdb1-compat                 2.1.3-7    The Berkeley database routines [gl

-- no debconf information




Reply to: