From: Baoquan He <baoquan.he@linux.dev>
To: linux-mm@kvack.org
Cc: akpm@linux-foundation.org, chrisl@kernel.org,
usama.arif@linux.dev, baohua@kernel.org, kasong@tencent.com,
nphamcs@gmail.com, shikemeng@huaweicloud.com,
youngjun.park@lge.com, linux-kernel@vger.kernel.org,
Baoquan He <baoquan.he@linux.dev>
Subject: [PATCH v6 0/3] mm/swap: use swap_ops to register swap device's methods
Date: Tue, 12 May 2026 18:41:58 +0800 [thread overview]
Message-ID: <20260512104201.716213-1-baoquan.he@linux.dev> (raw)
This can simplify the code logic and benefit any new type of swap device
added later.
And also do renaming in this patchset:
-------
file renaming:
---
mm/page_io.c to mm/swap_io.c
function renaming:
---
swap_writepage_* to swap_write_folio_* in file mm/swap_io.c
Changlog:
===
-v6:
* Fix a code bug Kairui found out when reviewing patch in mm/swapfile.c
in patch 2/3. Has fixed it by moving it to appropriate place and add
comment to explain.
-v5:
* Change the return value of init_swap_ops() as -EINVAL as per Chris's
suggestion and adjust its invocation in swapon() accordingly.
* Add Chris and Usama's Ack tags.
-v4:
* Fix a typo opeations -> operations
* Fix a code bug inside init_swap_ops(). I was taking a change at the
time, thought the change is trivial, so I only compiled but didn't
run kernel to test in v3. Now fix it and test passed.
Thanaks to Usama for catching the above two issues.
-v3:
* Rename setup_swap_ops() to init_swap_ops() which reflect the function
behaviour a little better
* Check if sis->ops, sis->ops->read_folio and sis->ops->write_folio is
NULL in init_swap_ops(), but not spread them where they are called.
And once the checking failed, fail swapon immediately. This is
suggested by Chris.
* Call init_swap_ops() before setup_swap_extents() invocation. This
doesn't harm anything and can benefit later adding sis->ops->swap_activate
method.
-v2:
* lots of cleanup for patch 2/3: renaming, moving data
structures, and using const properly
* collected tags from Kairui, Nhat and Barry
-v1:
https://lore.kernel.org/linux-mm/20260302104016.163542-1-bhe@redhat.com/
Baoquan He (3):
mm/swap: rename mm/page_io.c to mm/swap_io.c
mm/swap: use swap_ops to register swap device's methods
mm/swap_io.c: rename swap_writepage_* to swap_write_folio_*
MAINTAINERS | 2 +-
include/linux/swap.h | 2 +
mm/Makefile | 2 +-
mm/swap.h | 12 ++++-
mm/{page_io.c => swap_io.c} | 104 ++++++++++++++++++++----------------
mm/swapfile.c | 9 ++++
mm/zswap.c | 2 +-
7 files changed, 83 insertions(+), 50 deletions(-)
rename mm/{page_io.c => swap_io.c} (90%)
--
2.52.0
next reply other threads:[~2026-05-12 10:42 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-12 10:41 Baoquan He [this message]
2026-05-12 10:41 ` [PATCH v6 1/3] mm/swap: rename mm/page_io.c to mm/swap_io.c Baoquan He
2026-05-13 0:27 ` Chris Li
2026-05-13 5:21 ` Christoph Hellwig
2026-05-13 7:10 ` Baoquan He
2026-05-12 10:42 ` [PATCH v6 2/3] mm/swap: use swap_ops to register swap device's methods Baoquan He
2026-05-12 17:53 ` Kairui Song
2026-05-14 2:06 ` Baoquan He
2026-05-14 6:41 ` Kairui Song
2026-05-14 8:40 ` Baoquan He
2026-05-13 5:32 ` Christoph Hellwig
2026-05-13 15:33 ` Baoquan He
2026-05-15 6:30 ` Christoph Hellwig
2026-05-15 21:31 ` Chris Li
2026-05-13 5:45 ` Christoph Hellwig
2026-05-13 15:38 ` Baoquan He
2026-05-12 10:42 ` [PATCH v6 3/3] mm/swap_io.c: rename swap_writepage_* to swap_write_folio_* Baoquan He
2026-05-12 17:54 ` Kairui Song
2026-05-13 0:31 ` Chris Li
2026-05-13 5:36 ` Christoph Hellwig
2026-05-13 15:44 ` Baoquan He
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260512104201.716213-1-baoquan.he@linux.dev \
--to=baoquan.he@linux.dev \
--cc=akpm@linux-foundation.org \
--cc=baohua@kernel.org \
--cc=chrisl@kernel.org \
--cc=kasong@tencent.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=nphamcs@gmail.com \
--cc=shikemeng@huaweicloud.com \
--cc=usama.arif@linux.dev \
--cc=youngjun.park@lge.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.