@@ -521,9 +521,8 @@ static void sio_read_complete(struct kiocb *iocb, long ret)
*
* -ENOENT: the folio is entirely not zeromapped. The folio remains locked.
*
- * -EINVAL: some of the subpages in the folio are zeromaped, but not all of
- * them. This is an error because we don't currently support a large folio
- * that is partially in the zeromap. The folio is unlocked, but NOT marked
+ * -EINVAL: The folio is partially in the zeromap, which is not
+ * currently supported. The folio is unlocked, but NOT marked
* up-to-date, so that an IO error is emitted (e.g. do_swap_page() will
* sigbus).
*/
@@ -533,11 +532,6 @@ static int swap_read_folio_zeromap(struct folio *folio)
struct obj_cgroup *objcg;
bool is_zeromap;
- /*
- * Swapping in a large folio that is partially in the zeromap is not
- * currently handled. Return -EINVAL without marking the folio uptodate so
- * that an IO error is emitted (e.g. do_swap_page() will sigbus).
- */
if (WARN_ON_ONCE(swap_zeromap_batch(folio->swap, nr_pages,
&is_zeromap) != nr_pages)) {
folio_unlock(folio);
Fix the comments for swap_read_folio_zeromap(). Suggested-by: Yosry Ahmed <yosry.ahmed@linux.dev> Signed-off-by: Nhat Pham <nphamcs@gmail.com> --- mm/page_io.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-)