GNU bug report logs - #26397
25.1; call-process slow on macOS and slower on larger frames

Previous Next

Package: emacs;

Reported by: Aaron Jensen <aaronjensen <at> gmail.com>

Date: Sat, 8 Apr 2017 06:26:02 UTC

Severity: normal

Tags: fixed

Found in version 25.1

Fixed in version 26.1

Done: Alan Third <alan <at> idiocy.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Aaron Jensen <aaronjensen <at> gmail.com>
To: YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>
Cc: 26397 <at> debbugs.gnu.org, Alan Third <alan <at> idiocy.org>
Subject: bug#26397: [PATCH] Use vfork if possible on Darwin (bug#26397)
Date: Sun, 9 Apr 2017 17:06:21 -0700
On Sun, Apr 9, 2017 at 4:46 PM, YAMAMOTO Mitsuharu
<mituharu <at> math.s.chiba-u.ac.jp> wrote:
> According to ChangeLog, setsid in callproc.c seems to be used for
> disconnecting from the controlling terminal (so as to avoid using
> /dev/tty accidentally?).
>
> 1997-06-11  Paul Eggert  <eggert <at> twinsun.com>
>
>         * callproc.c (Fcall_process): Use setsid to disconnect child
>         process from controlling terminal.
>
> If that is the case (i.e., if we don't have to make the child process
> a session leader), then we don't need setsid when the Emacs process
> doesn't have the controlling terminal, which is common for Mac-native
> GUI sessions.  It doesn't apply for TTY or X11 sessions, but fork is
> not that slow there.

For me, this slows down call-process in TTY emacs by 3ms (from
2.5ms->5.5ms). I typically launch a GUI emacs and connect to the
server in TTY via emacsclient, and in that scenario this patch does
not slow down call-process in the TTY, but it will affect those who
use TTY only, it seems.

Aaron




This bug report was last modified 3 years and 199 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.