1.0.28.1: disable address space randomization on Linux/x86-64
authorNikodemus Siivola <nikodemus@random-state.net>
Fri, 1 May 2009 10:30:50 +0000 (10:30 +0000)
committerNikodemus Siivola <nikodemus@random-state.net>
Fri, 1 May 2009 10:30:50 +0000 (10:30 +0000)
 * At least some Red Hat versions do randomization on x86-64 as well,
   whereas we used to assume only x86 had this "feature".

NEWS
src/runtime/linux-os.c
version.lisp-expr

diff --git a/NEWS b/NEWS
index 40d92d8..2cce443 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,7 @@
 ;;;; -*- coding: utf-8; fill-column: 78 -*-
+  * bug fix: disable address space randomization Linux/x86-64 as well,
+    not just x86-64. (reported by Ken Olum)
+
 changes in sbcl-1.0.28 relative to 1.0.27:
   * a number of bugs in cross-compilation have been fixed, with the ultimate
     result that building under (at least) clisp should be much more reliable.
index 1635132..9b2e3cf 100644 (file)
@@ -239,7 +239,7 @@ os_init(char *argv[], char *envp[])
      * Since randomization is currently implemented only on x86 kernels,
      * don't do this trick on other platforms.
      */
-#ifdef LISP_FEATURE_X86
+#if defined(LISP_FEATURE_X86) || defined(LISP_FEATURE_X86_64)
     if ((major_version == 2
          /* Some old kernels will apparently lose unsupported personality flags
           * on exec() */
@@ -283,11 +283,13 @@ os_init(char *argv[], char *envp[])
             fprintf(stderr, "WARNING: Couldn't re-execute SBCL with the proper personality flags (maybe /proc isn't mounted?). Trying to continue anyway.\n");
         }
     }
+#ifdef LISP_FEATURE_X86
     /* Use SSE detector.  Recent versions of Linux enable SSE support
      * on SSE capable CPUs.  */
     /* FIXME: Are there any old versions that does not support SSE?  */
     fast_bzero_pointer = fast_bzero_detect;
 #endif
+#endif
 }
 
 
index c4bea0d..336801b 100644 (file)
@@ -17,4 +17,4 @@
 ;;; checkins which aren't released. (And occasionally for internal
 ;;; versions, especially for internal versions off the main CVS
 ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.28"
+"1.0.28.1"