aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/swapops.h
diff options
context:
space:
mode:
authorHongchen Zhang <zhanghongchen@loongson.cn>2022-05-09 18:20:53 -0700
committerAndrew Morton <akpm@linux-foundation.org>2022-05-13 07:20:07 -0700
commitb304c6f0d39d927a87e72a8ac6c89b96ac25f355 (patch)
tree29be4e485440f69532893b652bb4d0a486767577 /include/linux/swapops.h
parentmmap locking API: fix missed mmap_sem references in comments (diff)
downloadlinux-dev-b304c6f0d39d927a87e72a8ac6c89b96ac25f355.tar.xz
linux-dev-b304c6f0d39d927a87e72a8ac6c89b96ac25f355.zip
mm/swapops: make is_pmd_migration_entry more strict
A pmd migration entry should first be a swap pmd,so use is_swap_pmd(pmd) instead of !pmd_present(pmd). On the other hand, some architecture (MIPS for example) may misjudge a pmd_none entry as a pmd migration entry. Link: https://lkml.kernel.org/r/1651131333-6386-1-git-send-email-zhanghongchen@loongson.cn Signed-off-by: Hongchen Zhang <zhanghongchen@loongson.cn> Acked-by: Peter Xu <peterx@redhat.com> Cc: Alistair Popple <apopple@nvidia.com> Cc: Ralph Campbell <rcampbell@nvidia.com> Cc: Naoya Horiguchi <naoya.horiguchi@nec.com> Cc: Hugh Dickins <hughd@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to '')
-rw-r--r--include/linux/swapops.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/swapops.h b/include/linux/swapops.h
index d1b728904d4e..82265b055a0d 100644
--- a/include/linux/swapops.h
+++ b/include/linux/swapops.h
@@ -331,7 +331,7 @@ static inline pmd_t swp_entry_to_pmd(swp_entry_t entry)
static inline int is_pmd_migration_entry(pmd_t pmd)
{
- return !pmd_present(pmd) && is_migration_entry(pmd_to_swp_entry(pmd));
+ return is_swap_pmd(pmd) && is_migration_entry(pmd_to_swp_entry(pmd));
}
#else
static inline int set_pmd_migration_entry(struct page_vma_mapped_walk *pvmw,