Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 9 Oct 2018 16:40:03 -0400
From: Rich Felker <dalias@...c.org>
To: musl@...ts.openwall.com
Cc: Rabbitstack <rabbitstack7@...il.com>
Subject: Re: setrlimit hangs the process

On Tue, Oct 09, 2018 at 10:36:41PM +0200, Szabolcs Nagy wrote:
> * Rabbitstack <rabbitstack7@...il.com> [2018-10-09 21:37:06 +0200]:
> >  Should we raise an issue in Go upstream repository since there is nothing
> > actionable from musl side?
> > 
> 
> have you figured out where the siprocmask came from?
> it might not be the go runtime but some c lib that you linked in.

Well the sigset_t was created in Go code or via some other code that
bypasses libc. The libc functions cannot create a sigset_t with the
implementation-internal signals masked.

> > El vie., 5 oct. 2018 2:47, Rich Felker <dalias@...c.org> escribió:
> > > >
> > > > Here is the bug:
> > > >
> > > > 6208  rt_sigprocmask(SIG_SETMASK, ~[HUP INT QUIT ILL TRAP ABRT BUS FPE
> > > SEGV TERM STKFLT CHLD PROF SYS RTMIN RT_1],  <unfinished ...>
> 
> the go runtime should not make this call, it probably comes from
> somewhere else.
> 
> i think you should try to create a minimal reproducer go code
> that makes this syscall.

I looked at the Go implementations of the functions for sigset_t
manipulation and sigprocmask. They all bypass libc. So either it's an
error to use them at all in programs that link with libc, or a bug in
Go that they don't respect SIGRTMIN, etc.

Rich

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.