From: Theodore Ts'o Date: Tue, 17 Mar 2015 16:23:19 +0000 (-0400) Subject: fs: make sure the timestamps for lazytime inodes eventually get written X-Git-Tag: omap-for-v4.1/fixes-rc1~245^2~1 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a2f4870697a5bcf4a87073ec6b32dd2928c1211d;p=pandora-kernel.git fs: make sure the timestamps for lazytime inodes eventually get written Jan Kara pointed out that if there is an inode which is constantly getting dirtied with I_DIRTY_PAGES, an inode with an updated timestamp will never be written since inode->dirtied_when is constantly getting updated. We fix this by adding an extra field to the inode, dirtied_time_when, so inodes with a stale dirtytime can get detected and handled. In addition, if we have a dirtytime inode caused by an atime update, and there is no write activity on the file system, we need to have a secondary system to make sure these inodes get written out. We do this by setting up a second delayed work structure which wakes up the CPU much more rarely compared to writeback_expire_centisecs. Signed-off-by: Theodore Ts'o Reviewed-by: Jan Kara --- Reading git-diff-tree failed