Projects
home:pandora:RobinOS23
make
_service:download_src_package:make-4.3-cloexec....
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File _service:download_src_package:make-4.3-cloexec.patch of Package make
From d79fe162c009788888faaf0317253b6f0cac7092 Mon Sep 17 00:00:00 2001 From: Kevin Buettner <kevinb@redhat.com> Date: Thu, 23 Apr 2020 17:05:34 -0400 Subject: [SV 58232] Disable inheritance of jobserver FDs for recursive make A parent make will invoke a sub-make with close-on-exec disabled for the jobserver pipe FDs. Force close-on-exec to be to be enabled in the sub-make so the pipe is not always passed to child jobs. I have a test case which, when invoked with a suitable -j switch, will hang if the recipe inherits the jobserver pipe. This test case was inspired by a real world case in which testing GDB on Fedora would hang due to some poorly written test GDB cases having been passed the jobserver file descriptors. * src/posixos.c (jobserver_parse_auth): Call fd_noinherit() for jobserver pipe descriptors. Copyright-paperwork-exempt: yes diff --git a/src/posixos.c b/src/posixos.c index 525f292c..eab175a4 100644 --- a/src/posixos.c +++ b/src/posixos.c @@ -145,6 +145,11 @@ jobserver_parse_auth (const char *auth) /* When using pselect() we want the read to be non-blocking. */ set_blocking (job_fds[0], 0); + /* By default we don't send the job pipe FDs to our children. + See jobserver_pre_child() and jobserver_post_child(). */ + fd_noinherit (job_fds[0]); + fd_noinherit (job_fds[1]); + return 1; }
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.
浙ICP备2022010568号-2