From: Song Liu <songliubraving@fb.com>
To: <linux-mm@kvack.org>, <linux-fsdevel@vger.kernel.org>,
<linux-kernel@vger.kernel.org>
Cc: <matthew.wilcox@oracle.com>, <kirill.shutemov@linux.intel.com>,
<kernel-team@fb.com>, <william.kucharski@oracle.com>,
<akpm@linux-foundation.org>, <hdanton@sina.com>,
Song Liu <songliubraving@fb.com>
Subject: [PATCH v9 4/6] khugepaged: rename collapse_shmem() and khugepaged_scan_shmem()
Date: Mon, 24 Jun 2019 17:12:44 -0700 [thread overview]
Message-ID: <20190625001246.685563-5-songliubraving@fb.com> (raw)
In-Reply-To: <20190625001246.685563-1-songliubraving@fb.com>
Next patch will add khugepaged support of non-shmem files. This patch
renames these two functions to reflect the new functionality:
collapse_shmem() => collapse_file()
khugepaged_scan_shmem() => khugepaged_scan_file()
Signed-off-by: Song Liu <songliubraving@fb.com>
---
mm/khugepaged.c | 23 +++++++++++------------
1 file changed, 11 insertions(+), 12 deletions(-)
diff --git a/mm/khugepaged.c b/mm/khugepaged.c
index 0f7419938008..158cad542627 100644
--- a/mm/khugepaged.c
+++ b/mm/khugepaged.c
@@ -1287,7 +1287,7 @@ static void retract_page_tables(struct address_space *mapping, pgoff_t pgoff)
}
/**
- * collapse_shmem - collapse small tmpfs/shmem pages into huge one.
+ * collapse_file - collapse small tmpfs/shmem pages into huge one.
*
* Basic scheme is simple, details are more complex:
* - allocate and lock a new huge page;
@@ -1304,10 +1304,11 @@ static void retract_page_tables(struct address_space *mapping, pgoff_t pgoff)
* + restore gaps in the page cache;
* + unlock and free huge page;
*/
-static void collapse_shmem(struct mm_struct *mm,
- struct address_space *mapping, pgoff_t start,
+static void collapse_file(struct mm_struct *mm,
+ struct file *file, pgoff_t start,
struct page **hpage, int node)
{
+ struct address_space *mapping = file->f_mapping;
gfp_t gfp;
struct page *new_page;
struct mem_cgroup *memcg;
@@ -1563,11 +1564,11 @@ static void collapse_shmem(struct mm_struct *mm,
/* TODO: tracepoints */
}
-static void khugepaged_scan_shmem(struct mm_struct *mm,
- struct address_space *mapping,
- pgoff_t start, struct page **hpage)
+static void khugepaged_scan_file(struct mm_struct *mm,
+ struct file *file, pgoff_t start, struct page **hpage)
{
struct page *page = NULL;
+ struct address_space *mapping = file->f_mapping;
XA_STATE(xas, &mapping->i_pages, start);
int present, swap;
int node = NUMA_NO_NODE;
@@ -1631,16 +1632,15 @@ static void khugepaged_scan_shmem(struct mm_struct *mm,
result = SCAN_EXCEED_NONE_PTE;
} else {
node = khugepaged_find_target_node();
- collapse_shmem(mm, mapping, start, hpage, node);
+ collapse_file(mm, file, start, hpage, node);
}
}
/* TODO: tracepoints */
}
#else
-static void khugepaged_scan_shmem(struct mm_struct *mm,
- struct address_space *mapping,
- pgoff_t start, struct page **hpage)
+static void khugepaged_scan_file(struct mm_struct *mm,
+ struct file *file, pgoff_t start, struct page **hpage)
{
BUILD_BUG();
}
@@ -1722,8 +1722,7 @@ static unsigned int khugepaged_scan_mm_slot(unsigned int pages,
file = get_file(vma->vm_file);
up_read(&mm->mmap_sem);
ret = 1;
- khugepaged_scan_shmem(mm, file->f_mapping,
- pgoff, hpage);
+ khugepaged_scan_file(mm, file, pgoff, hpage);
fput(file);
} else {
ret = khugepaged_scan_pmd(mm, vma,
--
2.17.1
next prev parent reply other threads:[~2019-06-25 0:13 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-25 0:12 [PATCH v9 0/6] Enable THP for text section of non-shmem files Song Liu
2019-06-25 0:12 ` [PATCH v9 1/6] filemap: check compound_head(page)->mapping in filemap_fault() Song Liu
2019-07-10 17:44 ` Johannes Weiner
2019-07-10 17:51 ` Johannes Weiner
2019-06-25 0:12 ` [PATCH v9 2/6] filemap: update offset check " Song Liu
2019-07-10 17:52 ` Johannes Weiner
2019-06-25 0:12 ` [PATCH v9 3/6] mm,thp: stats for file backed THP Song Liu
2019-07-10 17:59 ` Johannes Weiner
2019-06-25 0:12 ` Song Liu [this message]
2019-06-27 13:19 ` [PATCH v9 4/6] khugepaged: rename collapse_shmem() and khugepaged_scan_shmem() Rik van Riel
2019-07-10 18:21 ` Johannes Weiner
2019-06-25 0:12 ` [PATCH v9 5/6] mm,thp: add read-only THP support for (non-shmem) FS Song Liu
2019-07-10 18:48 ` Johannes Weiner
2019-07-22 23:41 ` Song Liu
2019-07-23 23:59 ` Huang, Kai
2019-07-28 6:41 ` Song Liu
2019-06-25 0:12 ` [PATCH v9 6/6] mm,thp: avoid writes to file with THP in pagecache Song Liu
2019-06-27 13:18 ` Rik van Riel
2019-07-10 19:11 ` Johannes Weiner
2019-06-27 12:46 ` [PATCH v9 0/6] Enable THP for text section of non-shmem files Kirill A. Shutemov
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=20190625001246.685563-5-songliubraving@fb.com \
--to=songliubraving@fb.com \
--cc=akpm@linux-foundation.org \
--cc=hdanton@sina.com \
--cc=kernel-team@fb.com \
--cc=kirill.shutemov@linux.intel.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=matthew.wilcox@oracle.com \
--cc=william.kucharski@oracle.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 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).