about summary refs log tree commit diff homepage
diff options
context:
space:
mode:
-rwxr-xr-xserver.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/server.c b/server.c
index 5aaf855..97d4230 100755
--- a/server.c
+++ b/server.c
@@ -35,6 +35,14 @@ static void tilesMap(void) {
     tiles = mmap(NULL, TILES_SIZE, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);
     if (tiles == MAP_FAILED) err(EX_OSERR, "mmap");
 
+    error = madvise(tiles, TILES_SIZE, MADV_RANDOM);
+    if (error) err(EX_OSERR, "madvise");
+
+#ifdef MADV_NOSYNC
+    error = madvise(tiles, TILES_SIZE, MADV_NOSYNC);
+    if (error) err(EX_OSERR, "madvise");
+#endif
+
 #ifdef MADV_NOCORE
     error = madvise(tiles, TILES_SIZE, MADV_NOCORE);
     if (error) err(EX_OSERR, "madvise");