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
Attachment:
OpenPGP_0xC23D91F3A125FEA8.asc
Description: OpenPGP public key
Attachment:
OpenPGP_signature.asc
Description: OpenPGP digital signature