[PATCH core-updates]: Compile bdw-gc with support for disclaim procedures

  • Done
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Maxime Devos
Owner
unassigned
Submitted by
Maxime Devos
Severity
normal
M
M
Maxime Devos wrote on 6 Jul 2021 17:00
(address . guix-patches@gnu.org)
ca3b0ee52ab4855c5929d16ca88986825aa4c0ac.camel@telenet.be
Hi guix,

Disclaim procedures do not seem to be used in the wild,
but seem useful for implementing ephemerons in Guile
(to be investigated), hence this patch.

Guile seems to start building fine when using a bdw-gc packave
with "--enable-disclaim" added (I'm using (package (inherit ...) ...),
but that was on master. I'll verify on core-updates, but building
things will take some time.

Greetings,
Maxime.
From 34f32618f8f9099eabbd7734337f455aa1c7e150 Mon Sep 17 00:00:00 2001
From: Maxime Devos <maximedevos@telenet.be>
Date: Tue, 6 Jul 2021 16:50:39 +0200
Subject: [PATCH core-updates] gnu: bdw-gc: Compile with support for disclaim
procedures.

Disclaim procedures do not seem to be used in the wild,
but seem useful for implementing ephemerons in Guile
(to be investigated).

* gnu/packages/bdw-gc.scm
(libgc)[arguments]<#:configure-flags>: Add --enable-disclaim.
---
gnu/packages/bdw-gc.scm | 4 ++++
1 file changed, 4 insertions(+)

Toggle diff (24 lines)
diff --git a/gnu/packages/bdw-gc.scm b/gnu/packages/bdw-gc.scm
index 0d82889bac..dfa9a61101 100644
--- a/gnu/packages/bdw-gc.scm
+++ b/gnu/packages/bdw-gc.scm
@@ -4,6 +4,7 @@
;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -47,6 +48,9 @@
;; Install gc_cpp.h et al.
"--enable-cplusplus"
+ ;; Support GC_finalized_malloc and disclaim procedures.
+ "--enable-disclaim"
+
;; Work around <https://github.com/ivmai/bdwgc/issues/353>.
"--disable-munmap"
--
2.32.0
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYORwBhccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7kcgAQDCDfwDEgg/YOCg9yLANViizvQ0
FrNm74Tmn2tWmXZ1+AD/fIG12PBr8V16uszHCd7AvjnD4XuY9US1KbHgXDDFzQk=
=4rIe
-----END PGP SIGNATURE-----


M
M
Maxime Devos wrote on 9 Jul 2021 21:12
(address . 49440@debbugs.gnu.org)
8b747013034f0d3d0a7107d8564b09c56225da99.camel@telenet.be
Maxime Devos schreef op di 06-07-2021 om 17:00 [+0200]:
Toggle quote (11 lines)
> Hi guix,
>
> Disclaim procedures do not seem to be used in the wild,
> but seem useful for implementing ephemerons in Guile
> (to be investigated), hence this patch.
>
> Guile seems to start building fine when using a bdw-gc packave
> with "--enable-disclaim" added (I'm using (package (inherit ...) ...),
> but that was on master. I'll verify on core-updates, but building
> things will take some time.

FWIW, I ran "./pre-inst-env guix build guile" and it succeeded.

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYOiflxccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7lWMAQDVN/UpUWYNZGpRNypDdxld4xuv
r49bybM7LgjmPAlXtAD8Cv9cGVGu4P2f4nJX4odEIT36ywprv6jPbDapRpavzg0=
=EISf
-----END PGP SIGNATURE-----


L
L
Ludovic Courtès wrote on 21 Jul 2021 16:30
Re: bug#49440: [PATCH core-updates]: Compile bdw-gc with support for disclaim procedures
(name . Maxime Devos)(address . maximedevos@telenet.be)(address . 49440@debbugs.gnu.org)
87a6mfhh8l.fsf@gnu.org
Hi Maxime,

Maxime Devos <maximedevos@telenet.be> skribis:

Toggle quote (9 lines)
> Disclaim procedures do not seem to be used in the wild,
> but seem useful for implementing ephemerons in Guile
> (to be investigated), hence this patch.
>
> Guile seems to start building fine when using a bdw-gc packave
> with "--enable-disclaim" added (I'm using (package (inherit ...) ...),
> but that was on master. I'll verify on core-updates, but building
> things will take some time.

I have a slight preference for delaying ‘--enable-disclaim’ until we
have software that actually needs it.

WDYT?

Thanks,
Ludo’.
M
M
Maxime Devos wrote on 21 Jul 2021 21:07
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 49440@debbugs.gnu.org)
f9eb8a972be370816fcf852d88565897c3fc8253.camel@telenet.be
Ludovic Courtès schreef op wo 21-07-2021 om 16:30 [+0200]:
Toggle quote (5 lines)
> I have a slight preference for delaying ‘--enable-disclaim’ until we
> have software that actually needs it.
>
> WDYT?

Makes sense to me. I'll send a ping if (when?) I actually patch
Guile to use disclaim procedures.

The idea was to use ‘disclaim procedures’ for implementing ephemeral
hash tables (apparently ephemeral (not merely weak) hash tables are
required in ‘Spritely Goblins’, which currently only supports Racket
but Christopher Lemmer Webber intends to port to Guile at some point
or so I've understood).

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYPhwYhccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7sX5AQCJorO/Z//AENrSeG7m7V8AbAb8
wCYpvTeSsMgHbze8RgD+LjIxuPpIspb4gcdsq0PajGZDuYKfCiJOQ5NTVlwbmQU=
=Mp6b
-----END PGP SIGNATURE-----


M
M
Maxime Devos wrote on 6 Sep 2022 13:51
Re: [PATCH core-updates]: Compile bdw-gc with support for disclaim procedures
(address . 49440-done@debbugs.gnu.org)
d50c25de-2dc1-c935-46ac-faee56635352@telenet.be
wingo has been working on a new GC for guile that supports ephemerals,
so I don't think this patch will be necessary anymore.
Closing,
Maxime.
Attachment: OpenPGP_signature
Closed
?