From 4de60d28ca1a034d9713ed0fc84ae6f93b0ffcc4 Mon Sep 17 00:00:00 2001 From: Ludovic Pouzenc Date: Wed, 25 Jan 2023 13:29:29 +0100 Subject: Initial import --- dontneed.c | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 dontneed.c (limited to 'dontneed.c') diff --git a/dontneed.c b/dontneed.c new file mode 100644 index 0000000..29b25d8 --- /dev/null +++ b/dontneed.c @@ -0,0 +1,32 @@ +#include // posix_fadvise +#include // errno +#include // strerror +#include // fprintf +#include // open,close + +int usage(char progname[]) { + fprintf(stderr, "Usage: %s ...\n", progname); + fprintf(stderr, " Calls posix_fadvise(fd, 0, 0, POSIX_FADV_DONTNEED) on each \n\n"); + fprintf(stderr, " Tip: you may find all cached files from rootfs with the costly one-liner:\n"); + fprintf(stderr, " # find / -mount -type f -print0 | xargs -r0 fincore | grep -vE '^ *0B' | sort -hr | uniq | less\n"); + return 1; +} + +int main(int argc, char** argv) { + int i, fd, advise_errno, errors=0; + if ( argc < 2 ) return usage(argv[0]); + for (i=1; i