diff options
Diffstat (limited to 'src/common/OpenBSD_malloc_Linux.c')
-rw-r--r-- | src/common/OpenBSD_malloc_Linux.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/common/OpenBSD_malloc_Linux.c b/src/common/OpenBSD_malloc_Linux.c index da240c8e7e..7252ead784 100644 --- a/src/common/OpenBSD_malloc_Linux.c +++ b/src/common/OpenBSD_malloc_Linux.c @@ -96,7 +96,7 @@ static pthread_mutex_t gen_mutex = PTHREAD_MUTEX_INITIALIZER; #define _MALLOC_LOCK() {pthread_mutex_lock(&gen_mutex);} #define _MALLOC_UNLOCK() {pthread_mutex_unlock(&gen_mutex);} -#if defined(__sparc__) +#if defined(__sparc__) || defined(__alpha__) #define malloc_pageshift 13U #endif /* __sparc__ */ @@ -787,6 +787,13 @@ malloc_init(void) " Will not be able to dump malloc stats on exit"); #endif /* MALLOC_STATS */ + if (malloc_pagesize != getpagesize()) { + wrterror("malloc() replacement compiled with a different " + "page size from what we're running with. Failing."); + errno = ENOMEM; + return; + } + /* Allocate one page for the page directory. */ page_dir = (struct pginfo **)MMAP(malloc_pagesize); |