aboutsummaryrefslogtreecommitdiffstats
path: root/arch/riscv/include/asm/pgtable.h
diff options
context:
space:
mode:
authorNanyong Sun <sunnanyong@huawei.com>2021-04-30 16:28:47 +0800
committerPalmer Dabbelt <palmerdabbelt@google.com>2021-05-22 10:19:29 -0700
commitf5397c3ee0a3e2ca0a6d66d079ffcd5386b45b81 (patch)
tree8372806f05bfd2b3cca7a2eef002302e0c3f04c8 /arch/riscv/include/asm/pgtable.h
parentLinux 5.13-rc1 (diff)
downloadlinux-dev-f5397c3ee0a3e2ca0a6d66d079ffcd5386b45b81.tar.xz
linux-dev-f5397c3ee0a3e2ca0a6d66d079ffcd5386b45b81.zip
riscv: mm: add _PAGE_LEAF macro
In riscv, a page table entry is leaf when any bit of read, write, or execute bit is set. So add a macro:_PAGE_LEAF instead of (_PAGE_READ | _PAGE_WRITE | _PAGE_EXEC), which is frequently used to determine if it is a leaf page. This make code easier to read, without any functional change. Signed-off-by: Nanyong Sun <sunnanyong@huawei.com> Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
Diffstat (limited to 'arch/riscv/include/asm/pgtable.h')
-rw-r--r--arch/riscv/include/asm/pgtable.h6
1 files changed, 2 insertions, 4 deletions
diff --git a/arch/riscv/include/asm/pgtable.h b/arch/riscv/include/asm/pgtable.h
index 9469f464e71a..dbced7d37768 100644
--- a/arch/riscv/include/asm/pgtable.h
+++ b/arch/riscv/include/asm/pgtable.h
@@ -190,8 +190,7 @@ static inline int pmd_bad(pmd_t pmd)
#define pmd_leaf pmd_leaf
static inline int pmd_leaf(pmd_t pmd)
{
- return pmd_present(pmd) &&
- (pmd_val(pmd) & (_PAGE_READ | _PAGE_WRITE | _PAGE_EXEC));
+ return pmd_present(pmd) && (pmd_val(pmd) & _PAGE_LEAF);
}
static inline void set_pmd(pmd_t *pmdp, pmd_t pmd)
@@ -267,8 +266,7 @@ static inline int pte_exec(pte_t pte)
static inline int pte_huge(pte_t pte)
{
- return pte_present(pte)
- && (pte_val(pte) & (_PAGE_READ | _PAGE_WRITE | _PAGE_EXEC));
+ return pte_present(pte) && (pte_val(pte) & _PAGE_LEAF);
}
static inline int pte_dirty(pte_t pte)