Re: [PATCH 01/67] mm: Stop filemap_read() from grabbing a superfluous page

From: David Howells
Date: Tue Oct 19 2021 - 14:48:41 EST


Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote:

> > + isize = i_size_read(inode);
> > + if (unlikely(iocb->ki_pos >= isize))
> > + goto put_pages;
> > +
>
> Is there a good reason to assign to isize here? I'd rather not,
> because it complicates analysis, and a later change might look at
> the isize read here, not realising it was a racy use. So I'd
> rather see:

If we don't set isize, the loop will never end. Actually, maybe we can just
break out at that point rather than going to put_pages.

David