Bug#939541: sbcl: Please include patch to fix minor issue on alpha

John Paul Adrian Glaubitz <[email protected]>
Newsgroups gmane.linux.debian.ports.alpha
Message-ID <156775253277.31881.4541276888205018173.reportbug__27398.9158844174$1567753230$gmane$org@z6.physik.fu-berlin.de>
Source: sbcl
Version: 2:1.5.6-1
Severity: normal
Tags: patch
User: [email protected]
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 - [email protected]
`. `'   Freie Universitaet Berlin - [email protected]
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913
0001-alpha-Move-os_set_cheneygc_spaces-to-src-runtime-lin.patch (text/plain, 2.1 KB)
>From b3b9603afd99ccbaa165e2daf088d28bdba29ae8 Mon Sep 17 00:00:00 2001
From: John Paul Adrian Glaubitz <[email protected]>
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)
 {
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.