... | ... |
@@ -13985,7 +13985,7 @@ mmap((void *)0, 0, PROT_READ | PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0); |
13985 | 13985 |
return 0; |
13986 | 13986 |
} |
13987 | 13987 |
_ACEOF |
13988 |
-if ac_fn_c_try_compile "$LINENO"; then : |
|
13988 |
+if ac_fn_c_try_link "$LINENO"; then : |
|
13989 | 13989 |
ac_cv_c_mmap_anonymous='MAP_ANONYMOUS' |
13990 | 13990 |
else |
13991 | 13991 |
|
... | ... |
@@ -14014,7 +14014,8 @@ rm -f core conftest.err conftest.$ac_objext \ |
14014 | 14014 |
|
14015 | 14015 |
|
14016 | 14016 |
fi |
14017 |
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext |
|
14017 |
+rm -f core conftest.err conftest.$ac_objext \ |
|
14018 |
+ conftest$ac_exeext conftest.$ac_ext |
|
14018 | 14019 |
|
14019 | 14020 |
fi |
14020 | 14021 |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_mmap_anonymous" >&5 |
... | ... |
@@ -30,7 +30,7 @@ |
30 | 30 |
#ifdef HAVE_UNISTD_H |
31 | 31 |
#include <unistd.h> |
32 | 32 |
#endif |
33 |
-#if HAVE_MMAP |
|
33 |
+#ifdef ANONYMOUS_MAP |
|
34 | 34 |
#ifdef HAVE_SYS_MMAN_H |
35 | 35 |
#include <sys/mman.h> |
36 | 36 |
#endif |
... | ... |
@@ -67,7 +67,7 @@ static inline unsigned int fmap_which_page(fmap_t *m, size_t at); |
67 | 67 |
#define UNPAGE_THRSHLD_HI 8*1024*1024 |
68 | 68 |
#define READAHEAD_PAGES 8 |
69 | 69 |
|
70 |
-#if defined(HAVE_MMAP) && defined(C_LINUX) && defined(CL_THREAD_SAFE) |
|
70 |
+#if defined(ANONYMOUS_MAP) && defined(C_LINUX) && defined(CL_THREAD_SAFE) |
|
71 | 71 |
/* |
72 | 72 |
WORKAROUND |
73 | 73 |
Relieve some stress on mmap_sem. |
... | ... |
@@ -124,7 +124,7 @@ fmap_t *fmap_check_empty(int fd, off_t offset, size_t len, int *empty) { |
124 | 124 |
hdrsz = fmap_align_to(sizeof(fmap_t) + (pages-1) * sizeof(uint32_t), pgsz); /* fmap_t includes 1 bitmap slot, hence (pages-1) */ |
125 | 125 |
mapsz = pages * pgsz + hdrsz; |
126 | 126 |
fmap_lock; |
127 |
-#if HAVE_MMAP |
|
127 |
+#ifdef ANONYMOUS_MAP |
|
128 | 128 |
if ((m = (fmap_t *)mmap(NULL, mapsz, PROT_READ | PROT_WRITE, MAP_PRIVATE|/*FIXME: MAP_POPULATE is ~8% faster but more memory intensive */ANONYMOUS_MAP, -1, 0)) == MAP_FAILED) { |
129 | 129 |
m = NULL; |
130 | 130 |
} else { |
... | ... |
@@ -133,9 +133,9 @@ fmap_t *fmap_check_empty(int fd, off_t offset, size_t len, int *empty) { |
133 | 133 |
madvise((void *)m, mapsz, MADV_RANDOM|MADV_DONTFORK); |
134 | 134 |
#endif /* madvise */ |
135 | 135 |
} |
136 |
-#else /* ! HAVE_MMAP */ |
|
136 |
+#else /* ! ANONYMOUS_MAP */ |
|
137 | 137 |
m = (fmap_t *)cli_malloc(mapsz); |
138 |
-#endif /* HAVE_MMAP */ |
|
138 |
+#endif /* ANONYMOUS_MAP */ |
|
139 | 139 |
if(!m) { |
140 | 140 |
cli_warnmsg("fmap: map allocation failed\n"); |
141 | 141 |
fmap_unlock; |
... | ... |
@@ -159,7 +159,7 @@ fmap_t *fmap_check_empty(int fd, off_t offset, size_t len, int *empty) { |
159 | 159 |
|
160 | 160 |
|
161 | 161 |
static void fmap_aging(fmap_t *m) { |
162 |
-#if HAVE_MMAP |
|
162 |
+#ifdef ANONYMOUS_MAP |
|
163 | 163 |
if(m->dumb) return; |
164 | 164 |
if(m->paged * m->pgsz > UNPAGE_THRSHLD_HI) { /* we alloc'd too much */ |
165 | 165 |
unsigned int i, avail = 0, freeme[2048], maxavail = MIN(sizeof(freeme)/sizeof(*freeme), m->paged - UNPAGE_THRSHLD_LO / m->pgsz) - 1; |
... | ... |
@@ -410,7 +410,7 @@ void fmap_unneed_ptr(fmap_t *m, void *ptr, size_t len) { |
410 | 410 |
} |
411 | 411 |
|
412 | 412 |
void funmap(fmap_t *m) { |
413 |
-#if HAVE_MMAP |
|
413 |
+#ifdef ANONYMOUS_MAP |
|
414 | 414 |
if(!m->dumb) { |
415 | 415 |
size_t len = m->pages * m->pgsz + m->hdrsz; |
416 | 416 |
fmap_lock; |
... | ... |
@@ -80,7 +80,7 @@ AC_DEFUN([AC_C_FUNC_MMAP_ANONYMOUS], |
80 | 80 |
[ |
81 | 81 |
AC_CACHE_CHECK([for MAP_ANON(YMOUS)], [ac_cv_c_mmap_anonymous],[ |
82 | 82 |
ac_cv_c_mmap_anonymous='no' |
83 |
- AC_COMPILE_IFELSE( |
|
83 |
+ AC_LINK_IFELSE( |
|
84 | 84 |
[AC_LANG_PROGRAM([[#include <sys/mman.h>]], [[mmap((void *)0, 0, PROT_READ | PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0);]])], |
85 | 85 |
[ac_cv_c_mmap_anonymous='MAP_ANONYMOUS'], |
86 | 86 |
[ |