guix-patches
[Top][All Lists]
Advanced

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

[bug#30948] [PATCH core-updates] guix: Reap finished child processes in


From: Carlo Zancanaro
Subject: [bug#30948] [PATCH core-updates] guix: Reap finished child processes in build containers.
Date: Fri, 30 Mar 2018 22:17:06 +1100
User-agent: mu4e 1.0; emacs 25.3.1

Hey,

On Fri, Mar 30 2018, Ludovic Courtès wrote:
From what I can understand it's one of pid 1's responsiblities to reap child processes, so I would expect this to be set up for every builder, before the builder is run.

True, but for derivations it’s also “optional” because eventually guix-daemon terminates all its child processes.

As long as the build process doesn't rely on behaviour that, strictly speaking, it should be allowed to rely on. It's not an issue of resource leaking, it's an issue of correctness.

Given it's not specific to the gnu-build-system, I don't think it really fits there.

Yes, but note that it would be inherited by all the build systems.

Except for trivial-build-system, which is probably fine. I still don't think it fits in a specific build system, given it's a behaviour that transcends the specific action happening within the container.

Putting it in gnu-build-system will solve the problem in all realistic cases, so that's probably fine. It's still subtly incorrect, but will only be a problem if something using the trivial build system relies on pid 1 to reap a process, or if we make a new build system not deriving from gnu-build-system (which seems unlikely, but not impossible).

The “build side” is fully specified: ‘guix graph’ shows exactly what Guile is used where, and you can see with, say:

  guix graph -t derivation \
    -e '(@@ (gnu packages commencement) findutils-boot0)'

that the early derivations run on Guile 2.0.9.

For “host side” code, users can use any Guile >= 2.0.13.

Yeah, okay. That makes sense. I guess I just expected 2.0.13 to be the minimum version throughout.

Carlo

Attachment: signature.asc
Description: PGP signature


reply via email to

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