Code

madvise hints may not be ORed since they are enumerated ... #224
authoroetiker <oetiker@a5681a0c-68f1-0310-ab6d-d61299d08faa>
Thu, 28 May 2009 05:26:37 +0000 (05:26 +0000)
committeroetiker <oetiker@a5681a0c-68f1-0310-ab6d-d61299d08faa>
Thu, 28 May 2009 05:26:37 +0000 (05:26 +0000)
git-svn-id: svn://svn.oetiker.ch/rrdtool/branches/1.3/program@1835 a5681a0c-68f1-0310-ab6d-d61299d08faa

src/rrd_open.c

index f7ccca87a7d643c19d78ab8dce8c9ffc12560e81..6ef3596b6f69518f73298856b11d85d8a734429b 100644 (file)
@@ -226,12 +226,14 @@ rrd_file_t *rrd_open(
 #ifdef USE_MADVISE
     if (rdwr & RRD_COPY) {
         /* We will read everything in a moment (copying) */
-        madvise(data, rrd_file->file_len, MADV_WILLNEED | MADV_SEQUENTIAL);
+        madvise(data, rrd_file->file_len, MADV_WILLNEED);
+        madvise(data, rrd_file->file_len, MADV_SEQUENTIAL);
     } else {
         /* We do not need to read anything in for the moment */
         madvise(data, rrd_file->file_len, MADV_RANDOM);
         /* the stat_head will be needed soonish, so hint accordingly */
-        madvise(data, sizeof(stat_head_t), MADV_WILLNEED | MADV_RANDOM);
+        madvise(data, sizeof(stat_head_t), MADV_WILLNEED);
+        madvise(data, sizeof(stat_head_t), MADV_RANDOM);
     }
 #endif