bug-hurd
[Top][All Lists]
Advanced

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

Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by s


From: Svante Signell
Subject: Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack
Date: Thu, 24 Jan 2019 12:11:25 +0100
User-agent: Evolution 3.30.4-1

On Wed, 2019-01-23 at 16:36 +0100, Samuel Thibault wrote:
> Svante Signell, le mer. 23 janv. 2019 15:37:06 +0100, a ecrit:
> > I'll take a look. Maybe these issues are causing the SIGILL errors in the
> > gcc libgo tests.
> 
> They might be indeed.

Hello,

I've built and installed glibc-2.28-5 with the patches in
https://sourceware.org/bugzilla/show_bug.cgi?id=24110

threadinit-set-SS_DISABLE.patch and sigaltstack-set-SS_DISABLE.patch
with an equals sign in the first patch
ss->sigaltstack.ss_flags = SS_DISABLE;
not adding to the ss_flags as in Samuels patch
ss->sigaltstack.ss_flags |= SS_DISABLE;

I don't know which version is the correct one! Please advise.

However, the test programs works fine: foo.c gives:

main-thread sigaltstack: enabled=no onstack=no sp=0x0 size=0x0
alternate stack installed
main-thread sigaltstack: enabled=yes onstack=no sp=0x1ff9cdf size=0xa000
thread2 running
thread2 sigaltstack: enabled=no onstack=no sp=0x0 size=0x0
thread2 alternate stack installed
thread2 sigaltstack now: enabled=yes onstack=no sp=0x2ffbf7f size=0xa000
main-thread sigaltstack: enabled=yes onstack=no sp=0x1ff9cdf size=0xa000
SUPPORTED

and use-initial-alternate-stack.c does not output " Illegal instruction" :)

I've also run the libgo tests in gcc-9-9-20190120-1 and all 13 failing tests
returning "Illegal instruction (SIGILL)" now does not with the patched glibc.

However, all these tests are still failing, but now mainly with SIGABRT or
"signal 20 (SIGCHLD) received but handler not on signal stack" or "signal 30
(SIGUSR1) received but handler not on signal stack".

So I think there are still more bugs to hunt down.

Thanks!




reply via email to

[Prev in Thread] Current Thread [Next in Thread]