Re: 2.6.xx: dirty pages never being sync'd to disk?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Badari Pulavarty wrote:

Interesting. Since you have a very easy to reproduce case -
can you write a program to do posix_fadvise(POSIX_FADV_DONTNEED)
on those files in directory "t" and see what happens ?

Sure.  It appears to cause an immediate "sync" of the file data
to disk (lots of drive activity for a few seconds), and the Dirty
count from /proc/meminfo reduces correspondingly.

Oddly enough, the Dirty count didn't go all the way down, though.
Doing a "sync" or a second run of the program afterwards does
get the count down to zero immediately, without any significant I/O.

Strange.

#include <fcntl.h>
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>

int main (int argc, char *argv[])
{
        while (--argc > 0) {
                int fd = open(*++argv, O_RDWR);
                if (fd == -1) {
                        perror(*argv);
                } else {
                        int posix_fadvise(int, off_t, off_t, int);
                        const int POSIX_FADV_DONTNEED = 4;
                        int rc = posix_fadvise(fd, 0, 0, POSIX_FADV_DONTNEED);
                        if (rc == -1)
                                perror(*argv);
                        close(fd);
                }
        }
        return 0;
}
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux