On 08/04/2019 09.09, David Hildenbrand wrote: > On 07.04.19 14:55, Thomas Huth wrote: >> If CONFIG_PGSTE is not set (e.g. when compiling without KVM), GCC complains: >> >> CC arch/s390/mm/pgtable.o >> arch/s390/mm/pgtable.c:413:15: warning: ‘pmd_alloc_map’ defined but not >> used [-Wunused-function] >> static pmd_t *pmd_alloc_map(struct mm_struct *mm, unsigned long addr) >> ^~~~~~~~~~~~~ >> >> Wrap the function with "#ifdef CONFIG_PGSTE" to silence the warning. >> >> Signed-off-by: Thomas Huth <thuth@xxxxxxxxxx> >> --- >> arch/s390/mm/pgtable.c | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/arch/s390/mm/pgtable.c b/arch/s390/mm/pgtable.c >> index 8485d6dc2754..9ebd01219812 100644 >> --- a/arch/s390/mm/pgtable.c >> +++ b/arch/s390/mm/pgtable.c >> @@ -410,6 +410,7 @@ static inline pmd_t pmdp_flush_lazy(struct mm_struct *mm, >> return old; >> } >> >> +#ifdef CONFIG_PGSTE >> static pmd_t *pmd_alloc_map(struct mm_struct *mm, unsigned long addr) >> { >> pgd_t *pgd; >> @@ -427,6 +428,7 @@ static pmd_t *pmd_alloc_map(struct mm_struct *mm, unsigned long addr) >> pmd = pmd_alloc(mm, pud, addr); >> return pmd; >> } >> +#endif >> > > We could also move the function down to the functions where it is used Yeah, I thought about that, too. Both have advantages: - If we keep the code here, "git blame" shows a nicer history of these lines - If we move the code, we need less #ifdefs I'll leave the decision to the maintainers... Martin, Heiko? > Reviewed-by: David Hildenbrand <david@xxxxxxxxxx> Thanks, Thomas