Message ID | 20220412043848.80464-7-anshuman.khandual@arm.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | mm/mmap: Drop arch_vm_get_page_prot() and arch_filter_pgprot() | expand |
Le 12/04/2022 à 06:38, Anshuman Khandual a écrit : > There are no platforms left which subscribe ARCH_HAS_FILTER_PGPROT. Hence > drop generic arch_filter_pgprot() and also config ARCH_HAS_FILTER_PGPROT. > > Cc: Andrew Morton <akpm@linux-foundation.org> > Cc: linux-mm@kvack.org > Cc: linux-kernel@vger.kernel.org > Reviewed-by: Catalin Marinas <catalin.marinas@arm.com> > Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> > --- > mm/Kconfig | 3 --- > mm/mmap.c | 9 +-------- > 2 files changed, 1 insertion(+), 11 deletions(-) > > diff --git a/mm/Kconfig b/mm/Kconfig > index b1f7624276f8..3f7b6d7b69df 100644 > --- a/mm/Kconfig > +++ b/mm/Kconfig > @@ -762,9 +762,6 @@ config ARCH_HAS_CURRENT_STACK_POINTER > register alias named "current_stack_pointer", this config can be > selected. > > -config ARCH_HAS_FILTER_PGPROT > - bool > - > config ARCH_HAS_VM_GET_PAGE_PROT > bool > > diff --git a/mm/mmap.c b/mm/mmap.c > index 87cb2eaf7e1a..edf2a5e38f4d 100644 > --- a/mm/mmap.c > +++ b/mm/mmap.c > @@ -107,20 +107,13 @@ pgprot_t protection_map[16] __ro_after_init = { > }; > > #ifndef CONFIG_ARCH_HAS_VM_GET_PAGE_PROT > -#ifndef CONFIG_ARCH_HAS_FILTER_PGPROT > -static inline pgprot_t arch_filter_pgprot(pgprot_t prot) > -{ > - return prot; > -} > -#endif > - > pgprot_t vm_get_page_prot(unsigned long vm_flags) > { > pgprot_t ret = __pgprot(pgprot_val(protection_map[vm_flags & > (VM_READ|VM_WRITE|VM_EXEC|VM_SHARED)]) | > pgprot_val(arch_vm_get_page_prot(vm_flags))); > > - return arch_filter_pgprot(ret); > + return ret; You can drop 'ret' and directly do: return __pgprot(pgprot_val(protection_map[vm_flags & (VM_READ|VM_WRITE|VM_EXEC|VM_SHARED)]) | pgprot_val(arch_vm_get_page_prot(vm_flags))); > } > EXPORT_SYMBOL(vm_get_page_prot); > #endif /* CONFIG_ARCH_HAS_VM_GET_PAGE_PROT */
On 4/12/22 17:59, Christophe Leroy wrote: > > > Le 12/04/2022 à 06:38, Anshuman Khandual a écrit : >> There are no platforms left which subscribe ARCH_HAS_FILTER_PGPROT. Hence >> drop generic arch_filter_pgprot() and also config ARCH_HAS_FILTER_PGPROT. >> >> Cc: Andrew Morton <akpm@linux-foundation.org> >> Cc: linux-mm@kvack.org >> Cc: linux-kernel@vger.kernel.org >> Reviewed-by: Catalin Marinas <catalin.marinas@arm.com> >> Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> >> --- >> mm/Kconfig | 3 --- >> mm/mmap.c | 9 +-------- >> 2 files changed, 1 insertion(+), 11 deletions(-) >> >> diff --git a/mm/Kconfig b/mm/Kconfig >> index b1f7624276f8..3f7b6d7b69df 100644 >> --- a/mm/Kconfig >> +++ b/mm/Kconfig >> @@ -762,9 +762,6 @@ config ARCH_HAS_CURRENT_STACK_POINTER >> register alias named "current_stack_pointer", this config can be >> selected. >> >> -config ARCH_HAS_FILTER_PGPROT >> - bool >> - >> config ARCH_HAS_VM_GET_PAGE_PROT >> bool >> >> diff --git a/mm/mmap.c b/mm/mmap.c >> index 87cb2eaf7e1a..edf2a5e38f4d 100644 >> --- a/mm/mmap.c >> +++ b/mm/mmap.c >> @@ -107,20 +107,13 @@ pgprot_t protection_map[16] __ro_after_init = { >> }; >> >> #ifndef CONFIG_ARCH_HAS_VM_GET_PAGE_PROT >> -#ifndef CONFIG_ARCH_HAS_FILTER_PGPROT >> -static inline pgprot_t arch_filter_pgprot(pgprot_t prot) >> -{ >> - return prot; >> -} >> -#endif >> - >> pgprot_t vm_get_page_prot(unsigned long vm_flags) >> { >> pgprot_t ret = __pgprot(pgprot_val(protection_map[vm_flags & >> (VM_READ|VM_WRITE|VM_EXEC|VM_SHARED)]) | >> pgprot_val(arch_vm_get_page_prot(vm_flags))); >> >> - return arch_filter_pgprot(ret); >> + return ret; > > You can drop 'ret' and directly do: > > return __pgprot(pgprot_val(protection_map[vm_flags & > (VM_READ|VM_WRITE|VM_EXEC|VM_SHARED)]) | > pgprot_val(arch_vm_get_page_prot(vm_flags))); Sure, will do. > > >> } >> EXPORT_SYMBOL(vm_get_page_prot); >> #endif /* CONFIG_ARCH_HAS_VM_GET_PAGE_PROT */
diff --git a/mm/Kconfig b/mm/Kconfig index b1f7624276f8..3f7b6d7b69df 100644 --- a/mm/Kconfig +++ b/mm/Kconfig @@ -762,9 +762,6 @@ config ARCH_HAS_CURRENT_STACK_POINTER register alias named "current_stack_pointer", this config can be selected. -config ARCH_HAS_FILTER_PGPROT - bool - config ARCH_HAS_VM_GET_PAGE_PROT bool diff --git a/mm/mmap.c b/mm/mmap.c index 87cb2eaf7e1a..edf2a5e38f4d 100644 --- a/mm/mmap.c +++ b/mm/mmap.c @@ -107,20 +107,13 @@ pgprot_t protection_map[16] __ro_after_init = { }; #ifndef CONFIG_ARCH_HAS_VM_GET_PAGE_PROT -#ifndef CONFIG_ARCH_HAS_FILTER_PGPROT -static inline pgprot_t arch_filter_pgprot(pgprot_t prot) -{ - return prot; -} -#endif - pgprot_t vm_get_page_prot(unsigned long vm_flags) { pgprot_t ret = __pgprot(pgprot_val(protection_map[vm_flags & (VM_READ|VM_WRITE|VM_EXEC|VM_SHARED)]) | pgprot_val(arch_vm_get_page_prot(vm_flags))); - return arch_filter_pgprot(ret); + return ret; } EXPORT_SYMBOL(vm_get_page_prot); #endif /* CONFIG_ARCH_HAS_VM_GET_PAGE_PROT */