linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: alexs@kernel.org
To: Andrew Morton <akpm@linux-foundation.org>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org
Cc: "Alex Shi (tencent)" <alexs@kernel.org>
Subject: [PATCH v4 0/9] transfer page to folio in KSM
Date: Tue,  9 Apr 2024 17:28:15 +0800	[thread overview]
Message-ID: <20240409092826.1733637-1-alexs@kernel.org> (raw)

From: "Alex Shi (tencent)" <alexs@kernel.org>

This is the first part of page to folio transfer on KSM. Since only
single page could be stored in KSM, we could safely transfer stable tree
pages to folios. 
This patchset could reduce ksm.o 57kbytes from 2541776 bytes on latest
akpm/mm-stable branch with CONFIG_DEBUG_VM enabled. It pass the KSM testing
in LTP and kernel selftest.

Thanks for Matthew Wilcox and David Hildenbrand's suggestions and comments!

Alex Shi (tencent) (9):
  mm/ksm: add ksm_get_folio
  mm/ksm: use folio in remove_rmap_item_from_tree
  mm/ksm: add folio_set_stable_node
  mm/ksm: use folio in remove_stable_node
  mm/ksm: use folio in stable_node_dup
  mm/ksm: use ksm_get_folio in scan_get_next_rmap_item
  mm/ksm: use folio in write_protect_page
  mm/ksm: Convert chain series funcs to use and return folios
  mm/ksm: replace set_page_stable_node by folio_set_stable_node

 mm/ksm.c     | 263 ++++++++++++++++++++++++++-------------------------
 mm/migrate.c |   2 +-
 2 files changed, 134 insertions(+), 131 deletions(-)

-- 
2.43.0



             reply	other threads:[~2024-04-09  9:25 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-09  9:28 alexs [this message]
2024-04-09  9:28 ` [PATCH v4 1/9] mm/ksm: add ksm_get_folio alexs
2024-04-09 10:50   ` David Hildenbrand
2024-04-10  2:12     ` Alex Shi
2024-04-10  8:34   ` David Hildenbrand
2024-04-11  6:08     ` Alex Shi
2024-04-09  9:28 ` [PATCH v4 2/9] mm/ksm: use folio in remove_rmap_item_from_tree alexs
2024-04-09  9:28 ` [PATCH v4 3/9] mm/ksm: add folio_set_stable_node alexs
2024-04-09  9:28 ` [PATCH v4 4/9] mm/ksm: use folio in remove_stable_node alexs
2024-04-09  9:28 ` [PATCH v4 5/9] mm/ksm: use folio in stable_node_dup alexs
2024-04-09  9:28 ` [PATCH v4 6/9] mm/ksm: use ksm_get_folio in scan_get_next_rmap_item alexs
2024-04-09  9:28 ` [PATCH v4 7/9] mm/ksm: use folio in write_protect_page alexs
2024-04-09  9:28 ` [PATCH v4 8/9] mm/ksm: Convert chain series funcs and replace get_ksm_page alexs
2024-04-09 11:02   ` David Hildenbrand
2024-04-10  3:47     ` Alex Shi
2024-04-10  8:47       ` David Hildenbrand
2024-04-09  9:28 ` [PATCH v4 9/9] mm/ksm: replace set_page_stable_node by folio_set_stable_node alexs

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=20240409092826.1733637-1-alexs@kernel.org \
    --to=alexs@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox