Re: SPAM: Re: SPAM: Re: [patch 2/5] mm: fault vs invalidate/truncate race fix

Nick Piggin
2006-10-11T17:21:20Z

On Wed, Oct 11, 2006 at 10:11:43AM -0700, Linus Torvalds wrote:
>
>
> On Wed, 11 Oct 2006, Nick Piggin wrote:
> > >
> > > The original IO could have been started by a person who didn't have
> > > permissions to actually carry it out successfully, so if you enter with
> > > the page locked (because somebody else started the IO), and you wait for
> > > the page and it's not up-to-date afterwards, you absolutely _have_ to try
> > > the IO, and can only return a real IO error after your _own_ IO has
> > > failed.
> >
> > Sure, but we currently try to read _twice_, don't we?
>
> Well, we have the read-ahead, and then the real read. By the time we do
> the real read, we have forgotten about the read-ahead details, so..

I mean filemap_nopage does *two* synchronous reads when finding a !uptodate
page. This is despite the comment saying that it retries once on error.