1 diff a/src/rrd_open.c b/src/rrd_open.c
2 --- a/src/rrd_open.c
3 +++ b/src/rrd_open.c
4 @@ -363,6 +363,8 @@ void rrd_dontneed(
5 rrd->rra_def[i].row_cnt * rrd->stat_head->ds_cnt *
6 sizeof(rrd_value_t);
7 }
8 +
9 + if (dontneed_start < rrd_file->file_len) {
10 #ifdef USE_MADVISE
11 madvise(rrd_file->file_start + dontneed_start,
12 rrd_file->file_len - dontneed_start, MADV_DONTNEED);
13 @@ -371,6 +373,8 @@ void rrd_dontneed(
14 posix_fadvise(rrd_file->fd, dontneed_start,
15 rrd_file->file_len - dontneed_start, POSIX_FADV_DONTNEED);
16 #endif
17 + }
18 +
19 #if defined DEBUG && DEBUG > 1
20 mincore_print(rrd_file, "after");
21 #endif