unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* Garbage collector kills REPL server
@ 2016-11-11 17:56 Lluís Vilanova
  2017-03-09 21:01 ` Andy Wingo
  0 siblings, 1 reply; 2+ messages in thread
From: Lluís Vilanova @ 2016-11-11 17:56 UTC (permalink / raw)
  To: guile-devel

Hi!

I have a program that runs "run-server" (from module "system repl server") on a
separate thread (I'm using guile 2.1.4, current master; the problem did not
appear with 2.0).

The REPL server thread receives signals SIGXCPU and SIGPWR while calling
"select", and errors out saying the syscall was interrupted (raised by guile's
interface to the "select" syscall).

The signals are raised by libgc (through "pthread_kill"). SIGPWR (30) is raised
by GC_suspend_all, while SIGXCPU (24) is raised by GC_start_world.

Using sigaction to set these two signals to SIG_IGN on the thread results in a
later lockup (I guess the GC is still blocked trying to stop that thread). Using
it instead to add SA_RESTART to the signal's flags (copying the old handler)
does not solve the problem (select is still interrupted).


Any ideas what I can do to avoid this problem?


Thanks,
  Lluis



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Garbage collector kills REPL server
  2016-11-11 17:56 Garbage collector kills REPL server Lluís Vilanova
@ 2017-03-09 21:01 ` Andy Wingo
  0 siblings, 0 replies; 2+ messages in thread
From: Andy Wingo @ 2017-03-09 21:01 UTC (permalink / raw)
  To: guile-devel

Hi :)

On Fri 11 Nov 2016 18:56, Lluís Vilanova <vilanova@ac.upc.edu> writes:

> I have a program that runs "run-server" (from module "system repl server") on a
> separate thread (I'm using guile 2.1.4, current master; the problem did not
> appear with 2.0).
>
> The REPL server thread receives signals SIGXCPU and SIGPWR while calling
> "select", and errors out saying the syscall was interrupted (raised by guile's
> interface to the "select" syscall).

I believe I fixed this (after originally being the one to break it, doh)
a week ago or so.  Apologies for the inconvenience.  Looking forward to
actually having a stable Guile within a week or so :)

Andy



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2017-03-09 21:01 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-11 17:56 Garbage collector kills REPL server Lluís Vilanova
2017-03-09 21:01 ` Andy Wingo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).