use mmap() for files of any size. This should be much more buffer
cache friendly.
diff --git a/syscall.c b/syscall.c
index c655969..a8470e1 100644
--- a/syscall.c
+++ b/syscall.c
@@ -149,6 +149,17 @@
#endif
}
+#if HAVE_MMAP
+void *do_mmap(void *start, int len, int prot, int flags, int fd, OFF_T offset)
+{
+#if HAVE_OFF64_T
+ return mmap64(start, len, prot, flags, fd, offset);
+#else
+ return mmap(start, len, prot, flags, fd, offset);
+#endif
+}
+#endif
+
char *d_name(struct dirent *di)
{
#if HAVE_BROKEN_READDIR