Commit e7bfc462 authored by Aneesh Kumar K.V's avatar Aneesh Kumar K.V Committed by Michael Ellerman

powerpc/mm: Use pte_user() instead of open coding

We have a common declaration in pte-common.h Add a book3s specific one
and switch to pte_user() in callchain.c. In a subsequent patch we will
switch _PAGE_USER to _PAGE_PRIVILEGED in the book3s version only.
Signed-off-by: default avatarAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
parent 7e1e63c5
...@@ -185,6 +185,11 @@ extern struct page *pgd_page(pgd_t pgd); ...@@ -185,6 +185,11 @@ extern struct page *pgd_page(pgd_t pgd);
#define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val((pte)) & ~_PAGE_PTE }) #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val((pte)) & ~_PAGE_PTE })
#define __swp_entry_to_pte(x) __pte((x).val | _PAGE_PTE) #define __swp_entry_to_pte(x) __pte((x).val | _PAGE_PTE)
static inline bool pte_user(pte_t pte)
{
return !!(pte_val(pte) & _PAGE_USER);
}
#ifdef CONFIG_MEM_SOFT_DIRTY #ifdef CONFIG_MEM_SOFT_DIRTY
#define _PAGE_SWP_SOFT_DIRTY (1UL << (SWP_TYPE_BITS + _PAGE_BIT_SWAP_TYPE)) #define _PAGE_SWP_SOFT_DIRTY (1UL << (SWP_TYPE_BITS + _PAGE_BIT_SWAP_TYPE))
#else #else
......
...@@ -137,7 +137,7 @@ static int read_user_stack_slow(void __user *ptr, void *buf, int nb) ...@@ -137,7 +137,7 @@ static int read_user_stack_slow(void __user *ptr, void *buf, int nb)
offset = addr & ((1UL << shift) - 1); offset = addr & ((1UL << shift) - 1);
pte = READ_ONCE(*ptep); pte = READ_ONCE(*ptep);
if (!pte_present(pte) || !(pte_val(pte) & _PAGE_USER)) if (!pte_present(pte) || !pte_user(pte))
goto err_out; goto err_out;
pfn = pte_pfn(pte); pfn = pte_pfn(pte);
if (!page_is_ram(pfn)) if (!page_is_ram(pfn))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment