Merge tag 'folio-5.18f' of git://git.infradead.org/users/willy/pagecache
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 5 May 2022 23:52:15 +0000 (16:52 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 5 May 2022 23:52:15 +0000 (16:52 -0700)
commitfe27d189e3f42e31d3c8223d5daed7285e334c5e
tree766fa93ae394a9d1bc922d97e8e30fca6ef22312
parentf47c960e9395743a8aa3bd939d4d3a0f582f565e
parentb9ff43dd27434dbd850b908e2e0e1f6e794efd9b
Merge tag 'folio-5.18f' of git://git.infradead.org/users/willy/pagecache

Pull folio fixes from Matthew Wilcox:
 "Two folio fixes for 5.18.

  Darrick and Brian have done amazing work debugging the race I created
  in the folio BIO iterator. The readahead problem was deterministic, so
  easy to fix.

   - Fix a race when we were calling folio_next() in the BIO folio iter
     without holding a reference, meaning the folio could be split or
     freed, and we'd jump to the next page instead of the intended next
     folio.

   - Fix readahead creating single-page folios instead of the intended
     large folios when doing reads that are not a power of two in size"

* tag 'folio-5.18f' of git://git.infradead.org/users/willy/pagecache:
  mm/readahead: Fix readahead with large folios
  block: Do not call folio_next() on an unreferenced folio