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

Ben Gamari bgamari.foss at gmail.com
Fri Feb 17 17:54:10 MST 2012


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..e442933 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.5.4



More information about the rsync mailing list