Bug#939541: sbcl: Please include patch to fix minor issue on alpha
Source: sbcl
Version: 2:1.5.6-1
Severity: normal
Tags: patch
User: debian-alpha@lists.debian.org
Usertags: alpha
Hi!
While bootstrapping sbcl on alpha, I ran into an issue that was introduced
in 3bdf881c145682c86b511af4117b0c617b28353d (Change heap-reloc test not
to override mmap() via LD_PRELOAD). The attached patch fixes this issue,
could you include it in the next upload?
I have already posted it upstream on sbcl-devel/sbcl-bugs.
Thanks,
Adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer - glaubitz@debian.org
`. `' Freie Universitaet Berlin - glaubitz@physik.fu-berlin.de
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
>From b3b9603afd99ccbaa165e2daf088d28bdba29ae8 Mon Sep 17 00:00:00 2001
From: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Date: Thu, 5 Sep 2019 23:07:52 +0200
Subject: [PATCH] alpha: Move os_set_cheneygc_spaces() to
src/runtime/linux-mman.c
---
src/runtime/linux-mman.c | 16 ++++++++++++++++
src/runtime/linux-os.c | 17 -----------------
2 files changed, 16 insertions(+), 17 deletions(-)
diff --git a/src/runtime/linux-mman.c b/src/runtime/linux-mman.c
index 9b8928ba6..ff5316d7c 100644
--- a/src/runtime/linux-mman.c
+++ b/src/runtime/linux-mman.c
@@ -6,6 +6,22 @@
#include "os.h"
#include "interr.h"
+#ifdef LISP_FEATURE_ALPHA
+/* The Alpha is a 64 bit CPU. SBCL is a 32 bit application. Due to all
+ * the places that assume we can get a pointer into a fixnum with no
+ * information loss, we have to make sure it allocates all its ram in the
+ * 0-2Gb region. */
+
+static void * under_2gb_free_pointer;
+os_set_cheneygc_spaces(uword_t space0_start, uword_t space1_start)
+{
+ uword_t max;
+ max = (space1_start > space0_start) ? space1_start : space0_start;
+ under_2gb_free_pointer = max + dynamic_space_size;
+}
+
+#endif
+
os_vm_address_t
os_validate(int movable, os_vm_address_t addr, os_vm_size_t len)
{
diff --git a/src/runtime/linux-os.c b/src/runtime/linux-os.c
index a033d69ee..37c166c48 100644
--- a/src/runtime/linux-os.c
+++ b/src/runtime/linux-os.c
@@ -333,23 +333,6 @@ int os_preinit(char *argv[], char *envp[])
return 0;
}
-
-#ifdef LISP_FEATURE_ALPHA
-/* The Alpha is a 64 bit CPU. SBCL is a 32 bit application. Due to all
- * the places that assume we can get a pointer into a fixnum with no
- * information loss, we have to make sure it allocates all its ram in the
- * 0-2Gb region. */
-
-static void * under_2gb_free_pointer;
-os_set_cheneygc_spaces(uword_t space0_start, uword_t space1_start)
-{
- uword_t max;
- max = (space1_start > space0_start) ? space1_start : space0_start;
- under_2gb_free_pointer = max + dynamic_space_size;
-}
-
-#endif
-
void
os_protect(os_vm_address_t address, os_vm_size_t length, os_vm_prot_t prot)
{
--
2.23.0
Reply to: