On Tue, 2022-07-05 at 14:21 +0100, David Howells wrote: > Jeff Layton <jlayton@xxxxxxxxxx> wrote: > > > I don't know here... I think it might be better to just expect that when > > this function returns an error that the folio has already been unlocked. > > Doing it this way will mean that you will lock and unlock the folio a > > second time for no reason. > > I seem to remember there was some reason you wanted the folio unlocking and > putting. I guess you need to drop the ref to flush it. > > Would it make sense for ->check_write_begin() to be passed a "struct folio > **folio" rather than "struct folio *folio" and then the filesystem can clear > *folio if it disposes of the page? > I'd be OK with that too. -- Jeff Layton <jlayton@xxxxxxxxxx>