make sure this compiles with aix
[rrdtool.git] / src / rrd_open.c
index b9885aa..6a3cf34 100644 (file)
@@ -140,11 +140,7 @@ rrd_file_t *rrd_open(
        When we stop reading, it is highly unlikely that we start up again.
        In this manner we actually save time and diskaccess (and buffer cache).
        Thanks to Dave Plonka for the Idea of using POSIX_FADV_RANDOM here. */
-    if (0 != posix_fadvise(rrd_file->fd, 0, 0, POSIX_FADV_RANDOM)) {
-        rrd_set_error("setting POSIX_FADV_RANDOM on '%s': %s", file_name,
-                      rrd_strerror(errno));
-        goto out_close;
-    }
+    posix_fadvise(rrd_file->fd, 0, 0, POSIX_FADV_RANDOM);
 #endif
 
 /*
@@ -381,6 +377,9 @@ int rrd_close(
     int       ret;
 
 #ifdef HAVE_MMAP
+    ret = msync(rrd_file->file_start, rrd_file->file_len,MS_ASYNC);
+    if (ret != 0)
+        rrd_set_error("msync rrd_file: %s", rrd_strerror(errno));
     ret = munmap(rrd_file->file_start, rrd_file->file_len);
     if (ret != 0)
         rrd_set_error("munmap rrd_file: %s", rrd_strerror(errno));
@@ -480,7 +479,7 @@ inline ssize_t rrd_write(
     if (count == 0)
        return 0;
     if (buf == NULL)
-       return -1 /* EINVAL */
+       return -1; /* EINVAL */
     memcpy(rrd_file->file_start + rrd_file->pos, buf, count);
     rrd_file->pos += count;
     return count;       /* mimmic write() semantics */