Re: [PATCH] mm: fix page_mkclean_one (was: 2.6.19 file contentcorruption on ext3)

From: Linus Torvalds
Date: Thu Dec 21 2006 - 12:20:47 EST




On Wed, 20 Dec 2006, Trond Myklebust wrote:
>
> I can't see that it is the business of invalidate_inode_pages2() to
> resolve races between ->direct_IO() and pages that are redirtied by
> mmap(). All it needs to ensure is that pages that clean are discarded,
> since those are neither consistent with data that the ->directIO() call
> wrote to the disk nor are they scheduled to be written to disk.

Sure, we could happily just remove the -EIO. Alternatively, we could still
do all the invalidates over the whole range, and return -EIO at the end of
any of the pages weren't invalidated because they had to be written back.

I don't personally care whether we should just return success or something
to indicate that there were busy pages, but somebody who _uses_ direct-IO
might want to know that the thing didn't throw away everything. If you
know such users, can you ask them?

(Maybe "-EAGAIN" is better than "-EIO", since it's not really even a fatal
error).

Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/