On Wed, 20 Dec 2006 15:55:14 -0800 (PST) Linus Torvalds <[EMAIL PROTECTED]> wrote:
> > > @@ -386,12 +399,8 @@ int invalidate_inode_pages2_range(struct > > > address_space *mapping, > > > > invalidate_complete_page2() is pretty gruesome. We're handling the case > > where someone went and redirtied the page (and hence its buffers) after the > > invalidate_inode_pages2() caller (generic_file_direct_IO) synced it to > > disk. > > > > I'd prefer to just fail the direct-io if someone did that, but then > > people's tests fail and they whine. > > So with my change, afaik, we will just return EIO to the invalidate, and > do the write. The write's already been done by this stage. > Which should be ok. In fact, it appears to be the only > possibly valid thing to do. > > It really boils down to that same thing: if you remove the dirty bit, > there is NO CONCEIVABLE GOOD THING YOU CAN DO EXCEPT FOR: > - do the damn IO already ("clear_page_dirty_for_io()") > - truncate the page (unmap and destroy it both from page cache AND from > any user-visible filesystem cases) There's also redirty_page_for_writepage(). - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/