[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: |
Mon, 28 Jan 2019 20:22:42 +0100 |
User-agent: |
Evolution 3.30.4-1 |
On Mon, 2019-01-28 at 20:07 +0100, Svante Signell wrote:
> On Sat, 2019-01-26 at 23:24 +0100, Samuel Thibault wrote:
> > Samuel Thibault, le jeu. 24 janv. 2019 13:19:52 +0100, a ecrit:
> > > Svante Signell, le jeu. 24 janv. 2019 12:11:25 +0100, a ecrit:
> > > > 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.
> > >
> > > Yep, but there is most probably some progress here, and possibly it'll
> > > be easier to track down such explicit abort than a SIGILL from out of
> > > space.
> >
> > I guess this is printed from ./src/libgo/runtime/go-signal.c? It'd be
> > useful to dump the content of st and print sp.
>
> (gdb) p sp
> $1 = 654468
> (gdb) p st
> $2 = {ss_sp = 0x0, ss_size = 0, ss_flags = 0}
Sorry single-stepping further:
(gdb) p sp
$10 = 654468
(gdb) p stsp + st.ss_size
$11 = 655360
(gdb) p sp < stsp
$12 = 0
(gdb) p sp >= stsp + st.ss_size
$13 = 0
gdb) c
Continuing.
[New Thread 4528.12]
Thread 4 hit Breakpoint 1, runtime.sigtramp (sig=20, info=0x659551c,
context=0x6595328)
at ../../../src/libgo/runtime/go-signal.c:100
100 if (sp < (uintptr)(stack) || sp >= (uintptr)(stack) +
stack_size) {
(gdb) p sp
$16 = 106516932
gdb) n
101 sigaltstack(nil, &st);
(gdb)
102 if ((st.ss_flags & SS_DISABLE) != 0) {
(gdb)
107 stsp = (uintptr)(st.ss_sp);
(gdb)
108 if (sp < stsp || sp >= stsp + st.ss_size) {
(gdb) p sp < stsp
$20 = 0
(gdb) p sp >= stsp + st.ss_size
$21 = 1
(gdb) p stsp
$22 = 610332
(gdb) p sp
$23 = 106516932
(gdb) p stack_size
$25 = 128
(gdb) p st
$24 = {ss_sp = 0x9501c, ss_size = 45028, ss_flags = 1}
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack, (continued)
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack, Samuel Thibault, 2019/01/25
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack, Samuel Thibault, 2019/01/26
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack, Svante Signell, 2019/01/28
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack, Samuel Thibault, 2019/01/28
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack, Svante Signell, 2019/01/28
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack, Samuel Thibault, 2019/01/28
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack, Svante Signell, 2019/01/28
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack, Samuel Thibault, 2019/01/28
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack, Svante Signell, 2019/01/28
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack, Svante Signell, 2019/01/28
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack,
Svante Signell <=
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack, Samuel Thibault, 2019/01/28
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack, Svante Signell, 2019/01/28
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack, Samuel Thibault, 2019/01/28
- Re: [Bug hurd/24110] SS_DISABLE never set in stack_t value returned by sigaltstack, Svante Signell, 2019/01/28