On 03/02/2020 07:26 AM, Anshuman Khandual wrote: > diff --git a/arch/mips/include/asm/pgtable.h b/arch/mips/include/asm/pgtable.h > index aef5378f909c..8e4e4be1ca00 100644 > --- a/arch/mips/include/asm/pgtable.h > +++ b/arch/mips/include/asm/pgtable.h > @@ -269,6 +269,36 @@ static inline void set_pte_at(struct mm_struct *mm, unsigned long addr, > */ > extern pgd_t swapper_pg_dir[]; > > +/* > + * Platform specific pte_special() and pte_mkspecial() definitions > + * are required only when ARCH_HAS_PTE_SPECIAL is enabled. > + */ > +#if !defined(CONFIG_32BIT) && !defined(CONFIG_CPU_HAS_RIXI) > +#if defined(CONFIG_PHYS_ADDR_T_64BIT) && defined(CONFIG_CPU_MIPS32) > +static inline int pte_special(pte_t pte) > +{ > + return pte.pte_low & _PAGE_SPECIAL; > +} > + > +static inline pte_t pte_mkspecial(pte_t pte) > +{ > + pte.pte_low |= _PAGE_SPECIAL; > + return pte; > +} > +#else > +static inline int pte_special(pte_t pte) > +{ > + return pte_val(pte) & _PAGE_SPECIAL; > +} > + > +static inline pte_t pte_mkspecial(pte_t pte) > +{ > + pte_val(pte) |= _PAGE_SPECIAL; > + return pte; > +} > +#endif > +#endif > + Hello Ralf/Paul, This change now restricts mips definitions for pte_special() and pte_mkspecial() and makes them visible only for configs where ARCH_HAS_PTE_SPECIAL is enabled. Does this look okay ? In almost all other platforms we drop the stub definitions for pte_special() and pte_mkspecial(). - Anshuman