On Tue, Nov 03, 2020 at 03:24:36PM +0000, Matthew Wilcox wrote: > On Tue, Nov 03, 2020 at 09:00:45AM +0100, Christoph Hellwig wrote: > > On Mon, Nov 02, 2020 at 06:43:10PM +0000, Matthew Wilcox (Oracle) wrote: > > > We don't need to get the page lock again; we just need to wait for > > > the I/O to finish, so use wait_on_page_locked_killable() like the > > > other callers of ->readpage. > > > > As that isn't entirely obvious, what about adding a comment next to > > the wait_on_page_locked_killable call to document it? > > The other callers of ->readpage don't document that, so not sure why > we should here? The callers of ->readpage are a mess :( Many use lock_page or trylock_page, one uses wait_on_page_locked directly, another one uses the wait_on_page_read helper. I think we need a good helper here, and I think it looks a lot like filemap_read_page in your tree..