URL: <https://savannah.gnu.org/patch/?10629>
Summary: [PATCH 29/31] Keep the clock and the entropy pool
out of saved bands
Group: MIT/GNU Scheme
Submitter: barak
Submitted: Thu 24 Sep 2026 06:05:10 PM UTC
Category: None
Priority: 5 - Normal
Status: None
Privacy: Public
Assigned to: None
Originator Email:
Open/Closed: Open
Discussion Lock: Unlocked
_______________________________________________________
Follow-up Comments:
-------------------------------------------------------
Date: Thu 24 Sep 2026 06:05:10 PM UTC By: Barak A. Pearlmutter <barak>
disk-save dumped the heap with the garbage collector's statistics
history still in it -- a ring of records holding the universal time and
the process- and real-time clock readings of this process's collections
-- along with the decoded time it stashes for identify-world, the time
the dumping process restored its own band, and the default random
source's entropy-seeded state. Every band therefore differed between
builds, and since the compiler runs from a band, so did most of what it
compiled.
Before dumping, clear the statistics, go quiescent so that the dump's
own collections record zeros rather than clock readings, forget the
restore time, and give the random source a fixed state. Reset and
randomize again once the dump is done; a restored band resets through
event:after-restore. Take the saved-world time from SOURCE_DATE_EPOCH
when it is set.
_______________________________________________________
File Attachments:
Name: 0029-Keep-the-clock-and-the-entropy-pool-out-of-saved-ban.patch Size:
5.6KiB
<https://file.savannah.gnu.org/file/0029-Keep-the-clock-and-the-entropy-pool-out-of-saved-ban.patch?file_id=59022>
AGPL NOTICE
These attachments are served by Savane. You can download the corresponding
source code of Savane at
https://savannah.gnu.org/source/savane-2ce82de06cddf3c312e2e260f2c97db720d76efc.tar.gz
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/patch/?10629>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
signature.asc
Description: PGP signature
