Re: [PATCH-v4 2/7] vfs: add support for a lazytime mount option

2014-11-28 Thread Jan Kara
On Thu 27-11-14 15:19:54, Ted Tso wrote: On Thu, Nov 27, 2014 at 02:14:21PM +0100, Jan Kara wrote: Looking into the code your patch I'd prefer to do something like: * add support for I_DIRTY_TIME in __mark_inode_dirty() - update_time will call __mark_inode_dirty() with this flag if any

Re: [PATCH-v4 2/7] vfs: add support for a lazytime mount option

2014-11-28 Thread Jan Kara
On Thu 27-11-14 18:00:16, Ted Tso wrote: On Thu, Nov 27, 2014 at 02:14:21PM +0100, Jan Kara wrote: * change queue_io() to also call moved += move_expired_inodes(wb-b_dirty_time, wb-b_io, time + 24hours) For this you need to tweak move_expired_inodes() to take pointer to

Re: [PATCH-v4 2/7] vfs: add support for a lazytime mount option

2014-11-27 Thread Jan Kara
On Wed 26-11-14 05:23:52, Ted Tso wrote: Add a new mount option which enables a new lazytime mode. This mode causes atime, mtime, and ctime updates to only be made to the in-memory version of the inode. The on-disk times will only get updated when (a) if the inode needs to be updated for

Re: [PATCH-v4 2/7] vfs: add support for a lazytime mount option

2014-11-27 Thread Theodore Ts'o
On Thu, Nov 27, 2014 at 02:14:21PM +0100, Jan Kara wrote: Looking into the code your patch I'd prefer to do something like: * add support for I_DIRTY_TIME in __mark_inode_dirty() - update_time will call __mark_inode_dirty() with this flag if any of the times was updated. That way we can

Re: [PATCH-v4 2/7] vfs: add support for a lazytime mount option

2014-11-27 Thread Theodore Ts'o
On Thu, Nov 27, 2014 at 02:14:21PM +0100, Jan Kara wrote: * change queue_io() to also call moved += move_expired_inodes(wb-b_dirty_time, wb-b_io, time + 24hours) For this you need to tweak move_expired_inodes() to take pointer to timestamp instead of pointer to work but that's

Re: [PATCH-v4 2/7] vfs: add support for a lazytime mount option

2014-11-27 Thread Theodore Ts'o
On Thu, Nov 27, 2014 at 06:00:16PM -0500, Theodore Ts'o wrote: Well it's not quite enough. The problem is that for ext3 and ext4, the actual work of writing the inode happens in dirty_inode(), not in write_inode(). Which means we need to do something like this. I'm not entirely sure

[PATCH-v4 2/7] vfs: add support for a lazytime mount option

2014-11-26 Thread Theodore Ts'o
Add a new mount option which enables a new lazytime mode. This mode causes atime, mtime, and ctime updates to only be made to the in-memory version of the inode. The on-disk times will only get updated when (a) if the inode needs to be updated for some non-time related change, (b) if userspace