diff --git a/general-info/release-20b.txt b/general-info/release-20b.txt
index 9bbc770bef1cfd7ab4170d00601a9ac2f995a443..2512ef08e54508903c1fa8dd15d5d67df20b93de 100644
--- a/general-info/release-20b.txt
+++ b/general-info/release-20b.txt
@@ -54,6 +54,9 @@ New in this release:
     - A new switch, -help, has been added.  These print out brief
       summary of the available command line switches and then exits.
       You may also use --help, which is an alias for -help.
+    - CMUCL no longer crashes on Mac OS X if the dynamic space size is
+      too large.  This was caused by an erroneous value for the
+      maximum dynamic space size. 
 
   * ANSI compliance fixes:
     - COMPILE will update the macro-function if the specified name
diff --git a/lisp/x86-validate.h b/lisp/x86-validate.h
index 5ad228dc0a7bf26e0380ad73fd65562adedb39a2..0b83d86d3fb108ccc94c593aa221b60a8425d7da 100644
--- a/lisp/x86-validate.h
+++ b/lisp/x86-validate.h
@@ -3,7 +3,7 @@
  * This code was written as part of the CMU Common Lisp project at
  * Carnegie Mellon University, and has been placed in the public domain.
  *
- *  $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/x86-validate.h,v 1.30 2010/02/01 16:12:04 rtoy Exp $
+ *  $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/x86-validate.h,v 1.31 2010/05/21 19:26:53 rtoy Rel $
  *
  */
 
@@ -139,7 +139,16 @@
 
 #define DYNAMIC_0_SPACE_START	(SpaceStart_TargetDynamic)
 #ifdef GENCGC
+#if defined(DARWIN)
+/*
+ * On Darwin, /usr/lib/dyld appears to always be loaded at address
+ * #x8fe2e000.  Hence, the maximum dynamic space size is 1206050816
+ * bytes, or just over 1.150 GB.  Set the limit to 1.150 GB.
+ */
+#define DYNAMIC_SPACE_SIZE	(0x47E00000U)	/* 1.150GB */
+#else
 #define DYNAMIC_SPACE_SIZE	(0x67800000U)	/* 1.656GB */
+#endif
 #else
 #define DYNAMIC_SPACE_SIZE	(0x04000000U)	/* 64MB */
 #endif