mbox series

[v15,00/17] Folio support in block + iomap layers

Message ID 20210719184001.1750630-1-willy@infradead.org (mailing list archive)
Headers show
Series Folio support in block + iomap layers | expand

Message

Matthew Wilcox (Oracle) July 19, 2021, 6:39 p.m. UTC
This is (almost) everything necessary to support folios in iomap.
No regressions with an xfstests run on my setup.

v15:
 - Turn the / PAGE_SIZE into >> PAGE_SHIFT, as requested by Darrick
 - Modify the for loop to be in Darrick's preferred form
 - Improve documentation of bio_add_folio()
 - Add documentation for bio_for_each_folio_all() and folio_iter
 - Add bio.h to the generated kernel-doc
 - Rebase on top of folio for-next (which includes the iomap changes in -rc2)
   https://git.infradead.org/users/willy/pagecache.git/shortlog/refs/heads/for-next

Matthew Wilcox (Oracle) (17):
  block: Add bio_add_folio()
  block: Add bio_for_each_folio_all()
  iomap: Convert to_iomap_page to take a folio
  iomap: Convert iomap_page_create to take a folio
  iomap: Convert iomap_page_release to take a folio
  iomap: Convert iomap_releasepage to use a folio
  iomap: Convert iomap_invalidatepage to use a folio
  iomap: Pass the iomap_page into iomap_set_range_uptodate
  iomap: Use folio offsets instead of page offsets
  iomap: Convert bio completions to use folios
  iomap: Convert readahead and readpage to use a folio
  iomap: Convert iomap_page_mkwrite to use a folio
  iomap: Convert iomap_write_begin and iomap_write_end to folios
  iomap: Convert iomap_read_inline_data to take a folio
  iomap: Convert iomap_write_end_inline to take a folio
  iomap: Convert iomap_add_to_ioend to take a folio
  iomap: Convert iomap_migrate_page to use folios

 Documentation/core-api/kernel-api.rst |   1 +
 block/bio.c                           |  21 ++
 fs/iomap/buffered-io.c                | 511 +++++++++++++-------------
 include/linux/bio.h                   |  56 ++-
 4 files changed, 327 insertions(+), 262 deletions(-)

Comments

Christoph Hellwig July 20, 2021, 8:44 a.m. UTC | #1
Btw, this seems to miss a Cc to linux-block.
Matthew Wilcox (Oracle) July 20, 2021, 11:08 a.m. UTC | #2
On Tue, Jul 20, 2021 at 09:44:28AM +0100, Christoph Hellwig wrote:
> Btw, this seems to miss a Cc to linux-block.

hm?  i see it on linux-block, and so does lore.  maybe vger is being
slow again?

https://lore.kernel.org/linux-block/20210719184001.1750630-1-willy@infradead.org/