Subject: Re: bug#61960: 30.0.50; Unexec build reliably crashes during loadup

From: Eli Zaretskii <[email-masked]>
Date: Thu, 16 Mar 2023 08:25:28 +0200

> From: Po Lu <[email-masked]>
> Cc: [email-masked],  [email-masked],  [email-masked]
> Date: Thu, 16 Mar 2023 08:30:00 +0800
> 
> Eli Zaretskii <[email-masked]> writes:
> 
> > Why astonishing?  AFAIR, it was supposed to work, so unless it
> > bit-rotted, it should still build and work.
> 
> For example: Emacs with pdumper is supposed to be able to write into
> objects in pure space.  But that will crash an unexec build without the
> necessary protections with a write into program text, and AFAIK those
> protections are disabled if HAVE_PDUMPER.

They are disabled, but no sane Lisp should write into pure space,
ever.

And it isn't really correct that they are disabled: the recent
discussions about changing names of primitives clearly shows that at
least some areas in the pure space are write-protected even in pdumper
builds.  At least that's what I see on my system.

Anyway, I think you are mistaken in how you look at this (somewhat
weird) configuration: all it was supposed to allow is decide how to
dump Emacs at run time rather than at configure time.  That's all.