guix-devel
[Top][All Lists]
Advanced

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

Re: shepherd, fibers, and signals (asyncs)


From: Ludovic Courtès
Subject: Re: shepherd, fibers, and signals (asyncs)
Date: Tue, 09 Jan 2024 20:29:50 +0100
User-agent: Gnus/5.13 (Gnus v5.13)

Hi Attila,

Apologies for the delay, I’m seeing this just now.

Attila Lendvai <attila@lendvai.name> skribis:

> posix signal handlers are async, and shepherd uses the fibers API from
> inside signal handlers, specifically in at least handle-SIGCHLD.

Shepherd has two modes: ‘signalfd’ on Linux, and Guile signal handlers
elsewhere (= GNU/Hurd).

The latter sucks for many reasons and was plain untested until recently
because GNU/Hurd support had been lost (Fibers used to be Linux-only).

The behavior on signalfd-less systems is now fixed in 0.10.3, though in
suboptimal ways.

At a fundamental level, we should fix signal handling in Guile and
Fibers to avoid race conditions.  (And get ‘signalfd’ on the Hurd. :-))

HTH!

Ludo’.



reply via email to

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