From: Mike Kravetz <mike.kravetz@oracle.com>
To: linux-kernel@vger.kernel.org, linux-mm@kvack.org
Cc: Michal Hocko <mhocko@kernel.org>,
Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>,
Muchun Song <songmuchun@bytedance.com>,
David Hildenbrand <david@redhat.com>,
Oscar Salvador <osalvador@suse.de>,
Matthew Wilcox <willy@infradead.org>,
Miaohe Lin <linmiaohe@huawei.com>,
Andrew Morton <akpm@linux-foundation.org>,
Mike Kravetz <mike.kravetz@oracle.com>
Subject: [PATCH v3 0/5] create hugetlb flags to consolidate state
Date: Fri, 22 Jan 2021 11:52:26 -0800 [thread overview]
Message-ID: <20210122195231.324857-1-mike.kravetz@oracle.com> (raw)
While discussing a series of hugetlb fixes in [1], it became evident
that the hugetlb specific page state information is stored in a somewhat
haphazard manner. Code dealing with state information would be easier
to read, understand and maintain if this information was stored in a
consistent manner.
This series uses page.private of the hugetlb head page for storing a
set of hugetlb specific page flags. Routines are priovided for test,
set and clear of the flags.
[1] https://lore.kernel.org/r/20210106084739.63318-1-songmuchun@bytedance.com
v2 -> v3
Fixed !CONFIG_HUGETLB_PAGE build bug and moved BUILD_BUG_ON to
hugetlb_init (Oscar)
Enhanced patch 3 (HPageTemporary flag) commit message (Oscar)
Fixed typo enhanced coment in scan_movable_pages (Miaohe)
Patch -> v2
Went back to functions similar to 'normal' page flags (Matthew/Muchun)
Decided to leave check in unmap_and_move_huge_page and print warning
RFC -> PATCH
Simplified to use a single set of flag manipulation routines (Oscar)
Moved flags and routines to hugetlb.h (Muchun)
Changed format of page flag names (Muchun)
Changed subpool routine names (Matthew)
More comments in code (Oscar)
Based on v5.11-rc4-mmotm-2021-01-21-20-07
Mike Kravetz (5):
hugetlb: use page.private for hugetlb specific page flags
hugetlb: convert page_huge_active() HPageMigratable flag
hugetlb: only set HPageMigratable for migratable hstates
hugetlb: convert PageHugeTemporary() to HPageTemporary flag
hugetlb: convert PageHugeFreed to HPageFreed flag
fs/hugetlbfs/inode.c | 14 +---
include/linux/hugetlb.h | 91 ++++++++++++++++++++++
include/linux/page-flags.h | 6 --
mm/hugetlb.c | 152 ++++++++++++-------------------------
mm/memory_hotplug.c | 9 ++-
mm/migrate.c | 9 +--
6 files changed, 154 insertions(+), 127 deletions(-)
--
2.29.2
next reply other threads:[~2021-01-22 19:55 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-22 19:52 Mike Kravetz [this message]
2021-01-22 19:52 ` [PATCH v3 1/5] hugetlb: use page.private for hugetlb specific page flags Mike Kravetz
2021-01-26 8:17 ` Oscar Salvador
2021-01-27 10:20 ` Michal Hocko
2021-01-27 23:01 ` Mike Kravetz
2021-01-27 10:26 ` Michal Hocko
2021-01-22 19:52 ` [PATCH v3 2/5] hugetlb: convert page_huge_active() HPageMigratable flag Mike Kravetz
2021-01-27 10:25 ` Michal Hocko
2021-01-27 23:27 ` Mike Kravetz
2021-01-22 19:52 ` [PATCH v3 3/5] hugetlb: only set HPageMigratable for migratable hstates Mike Kravetz
2021-01-26 8:20 ` Oscar Salvador
2021-01-27 10:35 ` Michal Hocko
2021-01-27 23:36 ` Mike Kravetz
2021-01-28 5:52 ` Oscar Salvador
2021-01-28 21:37 ` Andrew Morton
2021-01-28 22:00 ` Mike Kravetz
2021-01-28 22:15 ` Andrew Morton
2021-01-29 9:09 ` Michal Hocko
2021-01-29 18:46 ` Mike Kravetz
2021-02-01 11:49 ` Michal Hocko
2021-02-04 1:11 ` Mike Kravetz
2021-01-22 19:52 ` [PATCH v3 4/5] hugetlb: convert PageHugeTemporary() to HPageTemporary flag Mike Kravetz
2021-01-23 3:15 ` [External] " Muchun Song
2021-01-27 10:39 ` Michal Hocko
2021-01-22 19:52 ` [PATCH v3 5/5] hugetlb: convert PageHugeFreed to HPageFreed flag Mike Kravetz
2021-01-27 10:41 ` Michal Hocko
2021-01-27 23:37 ` Mike Kravetz
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=20210122195231.324857-1-mike.kravetz@oracle.com \
--to=mike.kravetz@oracle.com \
--cc=akpm@linux-foundation.org \
--cc=david@redhat.com \
--cc=linmiaohe@huawei.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mhocko@kernel.org \
--cc=n-horiguchi@ah.jp.nec.com \
--cc=osalvador@suse.de \
--cc=songmuchun@bytedance.com \
--cc=willy@infradead.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;
as well as URLs for NNTP newsgroup(s).