linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] splice: update mtime and atime on files
@ 2009-08-14 15:05 Miklos Szeredi
  2009-08-15  6:42 ` Jens Axboe
  0 siblings, 1 reply; 8+ messages in thread
From: Miklos Szeredi @ 2009-08-14 15:05 UTC (permalink / raw)
  To: jens.axboe; +Cc: akpm, linux-kernel, linux-fsdevel

From: Miklos Szeredi <mszeredi@suse.cz>

Splice should update the modification and access times on regular
files just like read and write.  Not updating mtime will confuse
backup tools, etc...

This patch only adds the time updates for regular files.  For pipes
and other special files that splice touches the need for updating the
times is less clear.  Let's discuss and fix that separately.

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
---
 fs/splice.c |    8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

Index: linux-2.6/fs/splice.c
===================================================================
--- linux-2.6.orig/fs/splice.c	2009-07-03 13:12:06.000000000 +0200
+++ linux-2.6/fs/splice.c	2009-07-21 17:58:52.000000000 +0200
@@ -502,8 +502,10 @@ ssize_t generic_file_splice_read(struct
 		len = left;
 
 	ret = __generic_file_splice_read(in, ppos, pipe, len, flags);
-	if (ret > 0)
+	if (ret > 0) {
 		*ppos += ret;
+		file_accessed(in);
+	}
 
 	return ret;
 }
@@ -963,8 +965,10 @@ generic_file_splice_write(struct pipe_in
 
 		mutex_lock_nested(&inode->i_mutex, I_MUTEX_CHILD);
 		ret = file_remove_suid(out);
-		if (!ret)
+		if (!ret) {
+			file_update_time(out);
 			ret = splice_from_pipe_feed(pipe, &sd, pipe_to_file);
+		}
 		mutex_unlock(&inode->i_mutex);
 	} while (ret > 0);
 	splice_from_pipe_end(pipe, &sd);

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2009-08-19  8:50 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-14 15:05 [PATCH] splice: update mtime and atime on files Miklos Szeredi
2009-08-15  6:42 ` Jens Axboe
2009-08-18  5:00   ` Willy Tarreau
2009-08-18  8:35     ` Jens Axboe
2009-08-18  8:46       ` Willy Tarreau
2009-08-18  8:50         ` Jens Axboe
2009-08-18 11:59           ` Miklos Szeredi
2009-08-19  8:50             ` Jens Axboe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).