All of lore.kernel.org
 help / color / mirror / Atom feed
From: bugzilla-daemon@bugzilla.kernel.org
To: linux-man@vger.kernel.org
Subject: [Bug 214871] Man(3) system outdated
Date: Mon, 01 Nov 2021 12:06:35 +0000	[thread overview]
Message-ID: <bug-214871-11311-GR2CDBExiL@https.bugzilla.kernel.org/> (raw)
In-Reply-To: <bug-214871-11311@https.bugzilla.kernel.org/>

https://bugzilla.kernel.org/show_bug.cgi?id=214871

--- Comment #2 from zatrazz@gmail.com ---
On Sat, Oct 30, 2021 at 8:55 AM Alejandro Colomar (man-pages) <
alx.manpages@gmail.com> wrote:

> [CC += Glibc, Adhemerval]
>
> Hi Adhemerval,
>
> On 10/29/21 22:37, bugzilla-daemon@bugzilla.kernel.org wrote:
> > https://bugzilla.kernel.org/show_bug.cgi?id=214871
> >
> >              Bug ID: 214871
> >             Summary: Man(3) system outdated
> >             Product: Documentation
> >             Version: unspecified
> >            Hardware: All
> >                  OS: Linux
> >              Status: NEW
> >            Severity: normal
> >            Priority: P1
> >           Component: man-pages
> >            Assignee: documentation_man-pages@kernel-bugs.osdl.org
> >            Reporter: mikekearney85@hotmail.com
> >          Regression: No
> >
> > During my recent university work, I have noticed the man (3) page for
> system
> > (https://man7.org/linux/man-pages/man3/system.3.html) states:
> >
> > The system() library function uses fork(2) to create a child process that
> > executes the shell command specified in command using execl(3) as
> follows:
> > execl("/bin/sh", "sh", "-c", command, (char *) NULL);
> >
> > On reading the source code for system, this caused me some confusion.
> > Eventually I found a commit from 2018
> > (
>
> https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=5fb7fc96350575c9adb1316833e48ca11553be49
> ),
> > in which fork and exec were replaced by posix_spawn. The explains why I
> could
> > not aline the man page with the source code.
> >
>
> I was about to change that line to say that it works "as if" using
> fork(2) and execl(3), as POSIX says, but then, reading the page further,
> it talks about many implementation details that seem to relate to when
> glibc did actually use fork(2).  They may be outdated now, so I think
> it's better if someone from glibc that knows its current details reviews
> the full page and proposes changes.
>

Hi Alejandro,

Indeed we changed glibc to use posix_spawn on system and popen on  2.29
since
to use posix_spawn (which uses clone (CLONE_VFORK | CLONE_VM)).  It plays
way better with Linux memory subsystem than fork() + exec() specially when
such
calls are used with process with large RSS.

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

  parent reply	other threads:[~2021-11-01 12:06 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-29 20:37 [Bug 214871] New: Man(3) system outdated bugzilla-daemon
2021-10-30 11:56 ` [Bug 214871] " bugzilla-daemon
2021-11-01 12:06 ` bugzilla-daemon [this message]
2021-11-02  9:58 ` bugzilla-daemon
2021-11-02  9:58 ` bugzilla-daemon
2021-11-02 11:37 ` bugzilla-daemon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-214871-11311-GR2CDBExiL@https.bugzilla.kernel.org/ \
    --to=bugzilla-daemon@bugzilla.kernel.org \
    --cc=linux-man@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.