[bug #67687] make doesn't return jobserver tokens as a client on SIGINT
Sam James <[email protected]> Sun, 9 Nov 2025 11:57:49 -0500 (EST)
| Newsgroups | gmane.comp.gnu.make.bugs |
|---|---|
| Message-ID | <[email protected]> |
URL:
<https://savannah.gnu.org/bugs/?67687>
Summary: make doesn't return jobserver tokens as a client on
SIGINT
Group: make
Submitter: thesamesam
Submitted: Sun 09 Nov 2025 04:57:45 PM UTC
Severity: 3 - Normal
Priority: 5 - Normal
Item Group: None
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Discussion Lock: Any
Component Version: None
Operating System: None
Fixed Release: None
Triage Status: None
_______________________________________________________
Follow-up Comments:
-------------------------------------------------------
Date: Sun 09 Nov 2025 04:57:45 PM UTC By: Sam James <thesamesam>
Reporting on behalf of Michał Górny.
With the following Makefile:
```
all: a b c d e f
a:
sleep 180
b:
sleep 180
c:
sleep 180
d:
sleep 180
e:
sleep 180
f:
sleep 180
```
Start a jobserver (we've written a small jobserver impl called 'steve' at
https://gitweb.gentoo.org/proj/steve.git/, but I've reproduced this with
ninja's misc/jobserver_pool.py too):
```
steve -j3 /tmp/jobs &
```
Then run Make once, and interrupt it:
```
MAKEFLAGS='--jobserver-auth=fifo:/tmp/fifo' make
^Csleep 180
make: *** [Makefile:4: a] Interrupt
sleep 180
make: *** [Makefile:6: b] Interrupt
sleep 180
make: *** [Makefile:8: c] Interrupt
```
Then run it again and observe only one job is started because make didn't
return the previous tokens on SIGINT:
```
$ MAKEFLAGS='--jobserver-auth=fifo:/tmp/fifo' make
^Csleep 180
make: *** [Makefile:4: a] Interrupt
```
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?67687>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
signature.asc
(application/pgp-signature, 228 B)
-----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQQk97aszIMMAvLLwm6qLAuaBUf3TgUCaRDIDQAKCRCqLAuaBUf3 Tm5UAQC56G2cCfLk9zhnPhQ9nH5SR6Z8NmNp5N3XA8dgTTHEQwEAxkGNoei0yise hFy+0h+8APvWT+iCNdj6RRyqj6LUvgI= =Utrh -----END PGP SIGNATURE-----