Ben Gamari
2010-Nov-23 14:49 UTC
[PATCH 3/3] Inform kernel of FADV_DONTNEED hint in receiver
Use the FADV_DONTNEED fadvise hint after finishing writing to a destinataion fd in the receiver. --- receiver.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/receiver.c b/receiver.c index 39c5e49..33b21fb 100644 --- a/receiver.c +++ b/receiver.c @@ -721,6 +721,12 @@ int recv_files(int f_in, char *local_name) recv_ok = receive_data(f_in, fnamecmp, fd1, st.st_size, fname, fd2, F_LENGTH(file)); + if (do_fadvise(fd2, 0, 0, POSIX_FADV_DONTNEED) != 0) { + rsyserr(FERROR_XFER, errno, + "fadvise failed in writing %s", + full_fname(fname)); + } + log_item(log_code, file, &initial_stats, iflags, NULL); if (fd1 != -1) -- 1.7.1
Possibly Parallel Threads
- [PATCH 2/3] Inform kernel of FADV_DONTNEED hint in sender
- FADV_DONTNEED support
- Problem with exact moment of issuing transfer log entry for a [recv] action
- [PATCH] Add option --log-after to log after moving file into place
- [PATCH 1/3] Add fadvise interface wrapper