[PATCH 2/3] Inform kernel of FADV_DONTNEED hint in sender

Ben Gamari bgamari.foss at gmail.com
Tue Nov 23 07:49:51 MST 2010


Use the FADV_DONTNEED fadvise hint after finishing reading an origin fd
in the sender.
---
 sender.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/sender.c b/sender.c
index 59dae7d..a934bfe 100644
--- a/sender.c
+++ b/sender.c
@@ -338,6 +338,12 @@ void send_files(int f_in, int f_out)
 		if (do_progress)
 			end_progress(st.st_size);
 
+                if (do_fadvise(fd, 0, 0, POSIX_FADV_DONTNEED) != 0) {
+                        rsyserr(FERROR_XFER, errno,
+                                "fadvise failed in sending %s",
+                                full_fname(fname));
+                }
+
 		log_item(log_code, file, &initial_stats, iflags, NULL);
 
 		if (mbuf) {
-- 
1.7.1



More information about the rsync mailing list