On Mon 07-11-11 05:49:01, Christoph Hellwig wrote: > It seems like that function only uses write_inode_now to write out > file data. Any chance you could switch to simply using > filemap_write_and_wait here? Since ocfs2 does not have ->write_inode method, this is clearly fine. The patch is attached. Honza -- Jan Kara <jack@xxxxxxx> SUSE Labs, CR
>From e26a640bde3a38b8d57c02085219fc5733a8d724 Mon Sep 17 00:00:00 2001 From: Jan Kara <jack@xxxxxxx> Date: Tue, 8 Nov 2011 00:11:32 +0100 Subject: [PATCH] ocfs2: Use filemap_write_and_wait() instead of write_inode_now() Since ocfs2 has no ->write_inode method, there's no point in calling write_inode_now() from ocfs2_cleanup_delete_inode(). Use filemap_write_and_wait() instead. This helps us to cleanup inode writing interfaces... Signed-off-by: Jan Kara <jack@xxxxxxx> --- fs/ocfs2/inode.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/fs/ocfs2/inode.c b/fs/ocfs2/inode.c index a22d2c0..17454a9 100644 --- a/fs/ocfs2/inode.c +++ b/fs/ocfs2/inode.c @@ -951,7 +951,7 @@ static void ocfs2_cleanup_delete_inode(struct inode *inode, trace_ocfs2_cleanup_delete_inode( (unsigned long long)OCFS2_I(inode)->ip_blkno, sync_data); if (sync_data) - write_inode_now(inode, 1); + filemap_write_and_wait(inode->i_mapping); truncate_inode_pages(&inode->i_data, 0); } -- 1.7.1