unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Po Lu via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
To: Lars Ingebrigtsen <larsi@gnus.org>
Cc: p.stephani2@gmail.com, mattiase@acm.org,
	Eli Zaretskii <eliz@gnu.org>,
	54698@debbugs.gnu.org, rms@gnu.org
Subject: bug#54698: non-recursive GC marking [PATCH]
Date: Fri, 08 Apr 2022 20:16:27 +0800	[thread overview]
Message-ID: <87zgkvsrc4.fsf@yahoo.com> (raw)
In-Reply-To: <87czhraicv.fsf@gnus.org> (Lars Ingebrigtsen's message of "Fri, 08 Apr 2022 14:07:44 +0200")

Lars Ingebrigtsen <larsi@gnus.org> writes:

> Users will see mysterious segfaults that they didn't see before
> throughout the system.  Using the default settings (which, after all,
> almost everybody does), you can ask the system for virtually infinite
> amounts of memory, and the system will say "OK", and if you only use a
> tiny bit of that, everything will be fine.

With the default settings (0), you cannot ask the system for an infinite
amount of memory.  The kernel will reject deliberate overcommits of
memory, but will let programs like Emacs slowly run out of memory until
they are killed.  There is some guessing involved, and that guessing can
become unpredictable, leading to behavior like what Richard saw.

> With your recommended settings, programs like that will segfault
> instead.

Those programs which ask for huge amounts of heap and do not check the
return value of malloc will crash anyway under the default kernel
setting, which is why they don't exist.

> It's the height of hubris as Emacs developers to recommend OS-wide
> settings on something like this, and it makes us look like amateurs.

Overcommit is very controversial among even the Linux developers,
because it works well for some programs and does not for others.

IMO, it is reasonable to recommend the option that works best for us,
which is to turn overcommit off.

Thanks.





  reply	other threads:[~2022-04-08 12:16 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-03 18:40 bug#54698: non-recursive GC marking [PATCH] Mattias Engdegård
2022-04-04 11:01 ` Lars Ingebrigtsen
2022-04-04 11:16   ` Mattias Engdegård
2022-04-04 11:29     ` Lars Ingebrigtsen
2022-04-04 11:31       ` Lars Ingebrigtsen
2022-04-04 11:38     ` Eli Zaretskii
2022-04-04 11:57       ` Mattias Engdegård
2022-04-04 12:25         ` Eli Zaretskii
2022-04-04 17:18           ` Mattias Engdegård
2022-04-05  1:15     ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-05  8:08       ` Mattias Engdegård
2022-04-05  8:39         ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-05 11:11           ` Mattias Engdegård
2022-04-05 11:26             ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-05 11:43         ` Eli Zaretskii
2022-04-05 12:31           ` Philipp Stephani
2022-04-05 13:12             ` Eli Zaretskii
2022-04-06  4:09               ` Richard Stallman
2022-04-06  5:48                 ` Phil Sainty
2022-04-06 10:59                 ` Eli Zaretskii
2022-04-06 12:05                   ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-06 12:23                     ` Eli Zaretskii
2022-04-06 12:34                       ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-06 14:10                         ` Eli Zaretskii
2022-04-06 12:52                       ` Lars Ingebrigtsen
2022-04-08  4:24                     ` Richard Stallman
2022-04-08  5:49                       ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-08  6:16                         ` Eli Zaretskii
2022-04-08  7:41                           ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-08 11:15                             ` Eli Zaretskii
2022-04-08 11:32                               ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-08 11:55                             ` Lars Ingebrigtsen
2022-04-08 11:58                               ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-08 12:07                                 ` Lars Ingebrigtsen
2022-04-08 12:16                                   ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors [this message]
2022-04-08 13:07                                     ` Lars Ingebrigtsen
2022-04-09  0:28                                       ` Phil Sainty
2022-04-08 12:13                               ` Eli Zaretskii
2022-04-04 14:32 ` Andrea Corallo
2022-04-04 14:39   ` Mattias Engdegård
2022-04-04 15:44     ` Andrea Corallo
2022-04-04 16:04       ` Mattias Engdegård
2022-04-05  9:10         ` Andrea Corallo

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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=87zgkvsrc4.fsf@yahoo.com \
    --to=bug-gnu-emacs@gnu.org \
    --cc=54698@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    --cc=larsi@gnus.org \
    --cc=luangruo@yahoo.com \
    --cc=mattiase@acm.org \
    --cc=p.stephani2@gmail.com \
    --cc=rms@gnu.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.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).