- for (ii = 0; (unsigned) ii < *ds_cnt; ii++)
- free((*ds_namv)[ii]);
- free(*ds_namv);
- rrd_free(&rrd);
- free(*data);
- *data = NULL;
- close(rrd_file->fd);
- return (-1);
- }
-#ifdef HAVE_POSIX_FADVISE
- /* don't pollute the buffer cache with data read from the file. We do this while reading to
- keep damage minimal */
- if (0 !=
- posix_fadvise(rrd_file->fd, rrd_file->header_len, 0,
- POSIX_FADV_DONTNEED)) {
- rrd_set_error("setting POSIX_FADV_DONTNEED on '%s': %s",
- filename, rrd_strerror(errno));
- close(rrd_file->fd);
- return (-1);