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

Bug#174270: workaround for libc6: debians i386 build of glibc incompatible with coroutines



Hi,

coroutines and sigaltstack appear to work with the old Linuxthreads code 
only if the main program allocates the stacks that are used on the main
stack (so not as malloc'ed area or static).

For example, see glibc's ucontext example in the info pages, or at:
http://www.gnu.org/software/libc/manual/html_node/System-V-contexts.html

This program runs just fine, even on non-TLS systems. However, replacing
       char st1[8192];
       char st2[8192];
by
       static char st1[8192];
       static char st2[8192];
causes SIGSEGV on non-TLS systems (pre-kernel 2.6 with the glibc in
"testing").

Of course this workaround can only be applied on the program's side, and 
not on glibc's side.

Bart




Reply to: