Subject: Re: 2.0 for sgimips broken
To: Martin Husemann <martin@duskware.de>
From: Rafal Boni <rafal@pobox.com>
List: port-mips
Date: 05/14/2004 18:16:14
In message <20040514151957.GA599@drowsy.duskware.de>, you write:
-> On Fri, May 14, 2004 at 11:01:21AM -0400, Rafal Boni wrote:
-> > Maybe interestingly, regress/lib/libpthread/siglongjmp1 fails with:
-> >
-> > ./siglongjmp1
-> > siglongjmp1: SIGSEGV set
->
-> This usually happens when some libc stub (like __setjmp14) directly calls
-> a weak aliased system call (like sigprocmask). This way the sigprocmask
-> inside the kernel changes but libpthreads idea of it does not.
Unfortunately, that doesn't seem to be the case here...
-> Unfortunately on RISC machines it's often far more easy to do a system
-> call than to do a PIC call to a libc stub which does the system call -
-> but we must do the latter.
Heh, it's not nearly as bad on mips as as sparc64 (at least from looking
at the sparc64 version of the file :-).
-> Not that I've looked at the mips libc code at all, just reporting from my
-> experience - been there, had that wrong too - thanks to Christian Limpach
-> for diagnostic help. Hmm, but then I think Simon and I talked about this
-> failure mode when he did the libc changes - could this be a ld.elf_so
-> problem?
I was wondering that myself because of other symptoms (like attaching gdb
and setting a breakpt in the process that caused the kernel to fall over
let the process run fine after continuing, whereas without the breakpt,
the kernel would go *boom*).
Thanks,
--rafal
----
Rafal Boni rafal@pobox.com
We are all worms. But I do believe I am a glowworm. -- Winston Churchill