GNU bug report logs - #39164
27.0.60; Intermittent crash on MacOS 10.14 in setup_process_coding_systems

Previous Next

Package: emacs;

Reported by: Justin Guenther <jguenther <at> gmail.com>

Date: Fri, 17 Jan 2020 19:02:01 UTC

Severity: normal

Merged with 40023, 40555

Found in versions 27.0.60, 26.3, 27.0.90

Fixed in version 27.1

Done: Robert Pluim <rpluim <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: tomekowal <at> gmail.com, 39164 <at> debbugs.gnu.org, rpluim <at> gmail.com, jguenther <at> gmail.com
Subject: bug#39164: 27.0.60; Intermittent crash on MacOS 10.14 in setup_process_coding_systems
Date: Thu, 30 Jan 2020 18:42:41 +0900
On Wed, 29 Jan 2020 21:38:32 +0900,
Eli Zaretskii wrote:
> 
> On January 29, 2020 1:09:16 PM GMT+02:00, Eli Zaretskii <eliz <at> gnu.org> wrote:
> > On January 29, 2020 12:26:23 PM GMT+02:00, YAMAMOTO Mitsuharu
> > <mituharu <at> math.s.chiba-u.ac.jp> wrote:
> > > On Wed, 29 Jan 2020 02:37:10 +0900,
> > > Eli Zaretskii wrote:
> > > > 
> > > > > The increase happens only once per function in question.  So we
> > > make a
> > > > > dummy call in advance so later calls may not cause the increase
> > in
> > > > > unpredicable timings.
> > > > 
> > > > Can these dummy calls be made just before we call setrlimit in
> > > > init_process_emacs, as opposed to in a macOS-specific source file?
> > > 
> > > The functions in question are used together with Mac-specific GUI
> > > event handing.  I placed the dummy calls inside macOS-specific code
> > so
> > > the -nw case may not change the behavior from the original one.
> > 
> > We could condition the code in process.c by the aporopriate NS
> > preprocessor condition to make it take effect only in GUI sessions.
> 
> Sorry, preprocessor condition is not TRT, we should have a runtime test that limits these dummy calls to GUI sessions.
> 
> My point is that having this code in the same place for all platforms is better for long-range maintenance.

If we make dummy calls before setrlimit in init_process_emacs, then an
artificially increased limit is recorded to the variable nofile_limit,
and that will be used in restore_nofile_limit later.

				     YAMAMOTO Mitsuharu
				mituharu <at> math.s.chiba-u.ac.jp




This bug report was last modified 5 years and 35 days ago.

Previous Next


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