Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Shawn McKinney
OpenLDAP
Commits
37e99c2b
Commit
37e99c2b
authored
Nov 15, 2019
by
Howard Chu
Browse files
ITS
#9118
add MAP_NOSYNC for FreeBSD
parent
4bdf8bf5
Changes
1
Show whitespace changes
Inline
Side-by-side
libraries/liblmdb/mdb.c
View file @
37e99c2b
...
...
@@ -4707,9 +4707,15 @@ mdb_env_map(MDB_env *env, void *addr)
return mdb_nt2win32(rc);
env->me_map = map;
#else /* !_WIN32 */
int mmap_flags = MAP_SHARED;
int prot = PROT_READ;
#ifdef MAP_NOSYNC /* Used on FreeBSD */
if (flags & MDB_NOSYNC)
mmap_flags |= MAP_NOSYNC;
#endif
if (MDB_REMAPPING(env->me_flags)) {
(void) flags;
env->me_map = mmap(addr, NUM_METAS * env->me_psize,
PROT_READ, MAP_SHARED
,
env->me_map = mmap(addr, NUM_METAS * env->me_psize,
prot, mmap_flags
,
env->me_fd, 0);
if (env->me_map == MAP_FAILED) {
env->me_map = NULL;
...
...
@@ -4717,13 +4723,12 @@ mdb_env_map(MDB_env *env, void *addr)
}
} else
{
int prot = PROT_READ;
if (flags & MDB_WRITEMAP) {
prot |= PROT_WRITE;
if (ftruncate(env->me_fd, env->me_mapsize) < 0)
return ErrCode();
}
env->me_map = mmap(addr, env->me_mapsize, prot,
MAP_SHARED
,
env->me_map = mmap(addr, env->me_mapsize, prot,
mmap_flags
,
env->me_fd, 0);
if (env->me_map == MAP_FAILED) {
env->me_map = NULL;
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment