On Sun, 27 Dec 2009 18:44:21 +0200 Boaz Harrosh <bharrosh@xxxxxxxxxxx> wrote: > > exofs uses simple_write_end() for it's .write_end handler. But > it is not enough because simple_write_end() does not call > mark_inode_dirty() when it extends i_size. So even if we do > call mark_inode_dirty at beginning of write out, with a very > long IO and a saturated system we might get the .write_inode() > called while still extend-writing to file and miss out on the last > i_size updates. > > So override .write_end, call simple_write_end(), and afterwords if > i_size was changed call mark_inode_dirty(). > > It stands to logic that since simple_write_end() was the one extending > i_size it should also call mark_inode_dirty(). But it looks like all > users of simple_write_end() are memory-bound pseudo filesystems, who > could careless about mark_inode_dirty(). I might submit a > warning-comment patch to simple_write_end() in future. > > Signed-off-by: Boaz Harrosh <bharrosh@xxxxxxxxxxx> You added this to linux-next without a "Cc: <stable@xxxxxxxxxx>" to the changelog, so it won't be backported. However this patch should be backported, IMO. -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html