Adding MM list to this cover letter. On 2024/1/24 14:29, Qu Wenruo wrote: > With the folio interface, it's much easier to support multi-page sector > size (aka, sector/block size > PAGE_SIZE, which is rare between major > upstream filesystems). > > The basic idea is, if we firstly convert to full folio interface, and > allow an address space to only allocate folio which is exactly > block/sector size, the support for multi-page would be mostly done. > > But before that support, there are still quite some conversion left for > btrfs. > > Furthermore, with both subpage and multipage sector size, we need to > handle folio different: > > - For subpage > The folio would always be page sized. > > - For multipage (and regular sectorsize == PAGE_SIZE) > The folio would be sector sized. > > Furthermore, the filemap interface would make various shifts more > complex. > As filemap_*() interfaces use index which is PAGE_SHIFT based, > meanwhile with potential larger folio, the folio shift can be larger > than PAGE_SHIFT. As I really want some feedback on this part. I'm pretty sure we would have some filesystems go utilizing larger folios to implement their multi-page block size support. Thus in that case, can we have an interface change to make all folio versions of filemap_*() to accept a file offset instead of page index? Thanks, Qu