From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoph Hellwig Subject: Re: [PATCH 1/6] VFS: Ensure that writeback_single_inode() commits unstable writes Date: Fri, 8 Jan 2010 04:25:42 -0500 Message-ID: <20100108092542.GA27480@infradead.org> References: <20100106205110.22547.85345.stgit@localhost.localdomain> <20100106205110.22547.17971.stgit@localhost.localdomain> <20100107021849.GC9475@localhost> <1262839082.2185.15.camel@localhost> <20100107145635.GB20300@localhost> <1262877022.3309.11.camel@localhost> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Wu Fengguang , Peter Zijlstra , Jan Kara , Steve Rago , "linux-nfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , "jens.axboe" , Peter Staubach , Arjan van de Ven , Ingo Molnar , "linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" To: Trond Myklebust Return-path: Content-Disposition: inline In-Reply-To: <1262877022.3309.11.camel@localhost> Sender: linux-nfs-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-Id: linux-fsdevel.vger.kernel.org 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. -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html