GNU bug report logs -
#52835
[PATCH 0/2] Fix spawning a child not setting standard fds properly
Previous Next
Reported by: Josselin Poiret <dev <at> jpoiret.xyz>
Date: Mon, 27 Dec 2021 21:27:01 UTC
Severity: normal
Tags: patch
Done: Ludovic Courtès <ludo <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #77 received at 52835 <at> debbugs.gnu.org (full text, mbox):
Hi Josselin,
Josselin Poiret <dev <at> jpoiret.xyz> skribis:
> Here is hopefully the last reroll of this patchset. First of all, I did not
> include the gnulib patch again because it still applies cleanly and it is
> extremely large, but it should be applied before those 3 patches.
Yay!
> The first two patches should be applied on the current major release, while the
> third one should be applied on the next major release to finish the migration to
> spawn.
I pushed it to ‘wip-posix-spawn’ along with fixups I’m proposing, mostly
along the lines of what I suggested in
<https://issues.guix.gnu.org/52835#18>:
• Avoiding the extra ‘fork’ in ‘system*’ upon error;
• Keep ‘scm_spawn_process’ internal.
I also added Andrew Whatson’s patch from
<https://issues.guix.gnu.org/59321>.
If that’s fine with you, I can squash the “fixup!” commits and merge the
branch. Let me know!
Earlier we agreed it’d be nice to expose ‘spawn*’/‘primitive-spawn’. I
still think it’s a good idea, but the interface would need some work IMO
to be more generally useful. In essence, we could provide something
similar to ‘fork+exec-command’ in the Shepherd, where one can pass
environment variables, stdin/stdout/stderr, etc., all that with keyword
arguments and reasonable defaults.
It’s a bit of extra work though so we can discuss that later,
separately.
Thank you!
Ludo’.
This bug report was last modified 2 years and 128 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.