lkml.org 
[lkml]   [2019]   [Mar]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v4 07/19] sparc: mm: Add p?d_large() definitions
    Date
    walk_page_range() is going to be allowed to walk page tables other than
    those of user space. For this it needs to know when it has reached a
    'leaf' entry in the page tables. This information is provided by the
    p?d_large() functions/macros.

    For sparc 64 bit, pmd_large() and pud_large() are already provided, so
    add #defines to prevent the generic versions (added in a later patch)
    from being used.

    CC: "David S. Miller" <davem@davemloft.net>
    CC: sparclinux@vger.kernel.org
    Signed-off-by: Steven Price <steven.price@arm.com>
    ---
    arch/sparc/include/asm/pgtable_64.h | 2 ++
    1 file changed, 2 insertions(+)

    diff --git a/arch/sparc/include/asm/pgtable_64.h b/arch/sparc/include/asm/pgtable_64.h
    index 1393a8ac596b..f502e937c8fe 100644
    --- a/arch/sparc/include/asm/pgtable_64.h
    +++ b/arch/sparc/include/asm/pgtable_64.h
    @@ -713,6 +713,7 @@ static inline unsigned long pte_special(pte_t pte)
    return pte_val(pte) & _PAGE_SPECIAL;
    }

    +#define pmd_large pmd_large
    static inline unsigned long pmd_large(pmd_t pmd)
    {
    pte_t pte = __pte(pmd_val(pmd));
    @@ -894,6 +895,7 @@ static inline unsigned long pud_page_vaddr(pud_t pud)
    #define pgd_present(pgd) (pgd_val(pgd) != 0U)
    #define pgd_clear(pgdp) (pgd_val(*(pgdp)) = 0UL)

    +#define pud_large pud_large
    static inline unsigned long pud_large(pud_t pud)
    {
    pte_t pte = __pte(pud_val(pud));
    --
    2.20.1
    \
     
     \ /
      Last update: 2019-03-06 16:53    [W:4.166 / U:0.296 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site