On Fri, 29 Apr 2022 10:43:34 +1000 NeilBrown <neilb@xxxxxxx> wrote: > Pages passed to swap_readpage()/swap_writepage() are not necessarily all > the same size - there may be transparent-huge-pages involves. > > The BIO paths of swap_*page() handle this correctly, but the SWP_FS_OPS > path does not. > > So we need to use thp_size() to find the size, not just assume > PAGE_SIZE, and we need to track the total length of the request, not > just assume it is "page * PAGE_SIZE". Cool. I added this in the series after mm-submit-multipage-write-for-swp_fs_ops-swap-space.patch. I could later squash it into that patch if you think that's more logical.