Re: [PATCH] s390/mm: Silence compiler warning when compiling without CONFIG_PGSTE

From: Thomas Huth
Date: Mon Apr 08 2019 - 06:36:40 EST


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