On Fri, 2010-01-08 at 04:25 -0500, Christoph Hellwig wrote: > On Thu, Jan 07, 2010 at 10:10:22AM -0500, Trond Myklebust wrote: > > As I said previously, the write_inode() call is done _before_ you sync > > the dirty pages to the server, whereas commit_unstable_pages() wants to > > be done _after_ syncing. So the two are not the same, and we cannot > > replace commit_unstable_pages() with write_inode(). > > But that's more an accident of how this code was written. The right > order nees to be to write the pages first, then call write_inode. Most > modern filesystems have to work around this in their write_inode method > by waiting for the pages themselves. I already fixed the same ordering > issue in fsync, and the writeback code is next on the agenda. > Could we in that case replace write_inode() with something that takes a struct writeback_control? It is very useful to have full information about the write range and flags as it allows us to tweak the COMMIT RPC call. Trond -- 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