Re: linux-next: build warning after merge of the akpm-current tree

From: Andrew Morton
Date: Wed Apr 01 2020 - 18:58:34 EST


On Tue, 31 Mar 2020 19:56:12 +1100 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:

> Hi all,
>
> After merging the akpm-current tree, today's linux-next build (i386
> defconfig) produced this warning:
>
> mm/hugetlb.c: In function 'huge_pte_offset':
> cc1: warning: function may return address of local variable [-Wreturn-local-addr]
> mm/hugetlb.c:5361:14: note: declared here
> 5361 | pud_t *pud, pud_entry;
> | ^~~~~~~~~
> cc1: warning: function may return address of local variable [-Wreturn-local-addr]
> mm/hugetlb.c:5360:14: note: declared here
> 5360 | p4d_t *p4d, p4d_entry;
> | ^~~~~~~~~
>
> Introduced by commit
>
> 826ddc88e2cf ("mm/hugetlb: fix a addressing exception caused by huge_pte_offset")

I can reproduce this (i386 defconfig, gcc-7.2.0).

I can see no way in which this makes any sense. Hopefully it's a gcc
bug but it's hard to see how it could have messed up this fairly simple
code.