[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202007292007.D87DBD34B@keescook>
Date: Wed, 29 Jul 2020 20:17:48 -0700
From: Kees Cook <keescook@...omium.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Stephen Rothwell <sfr@...b.auug.org.au>,
Emese Revfy <re.emese@...il.com>,
Linux Next Mailing List <linux-next@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Willy Tarreau <w@....eu>,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will@...nel.org>,
Sami Tolvanen <samitolvanen@...gle.com>
Subject: Re: linux-next: build failure after merge of the origin tree
On Wed, Jul 29, 2020 at 04:43:04PM -0700, Linus Torvalds wrote:
> On Wed, Jul 29, 2020 at 4:08 PM Stephen Rothwell <sfr@...b.auug.org.au> wrote:
> >
> > include/linux/random.h:123:24: error: variable 'net_rand_state' with 'latent_entropy' attribute must not be local
> > 123 | DECLARE_PER_CPU(struct rnd_state, net_rand_state) __latent_entropy;
>
> Hmm.
>
> Ok, this shows a limitation of my allmodconfig testing (and all my
> normal builds) - no plugins. So that problem wasn't as obvious as it
> should have been.
I'll look into this more tomorrow. (But yes, __latent_entropy is
absolutely used for globals already, as you found, but this is the first
percpu it was applied to...)
> Adding the gcc plugin people. Otherwise the only option seems to be to
> just remove that __latent_entropy marker.
And just another heads-up, the patch[1] (which was never sent to a public
list) also breaks arm64 (circular header needs?):
$ make CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 defconfig
...
$ make -j$(getconf _NPROCESSORS_ONLN) CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64
...
In file included from ./arch/arm64/include/asm/smp.h:33,
from ./include/linux/smp.h:82,
from ./include/linux/percpu.h:7,
from ./include/linux/random.h:14,
from arch/arm64/kernel/pointer_auth.c:5:
./arch/arm64/include/asm/pointer_auth.h: In function ‘ptrauth_keys_init_user’:
./arch/arm64/include/asm/pointer_auth.h:40:3: error: implicit declaration of function ‘get_random_bytes’; did you mean ‘get_random_once’? [-Werror=implicit-function-declaration]
40 | get_random_bytes(&keys->apia, sizeof(keys->apia));
| ^~~~~
[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f227e3ec3b5cad859ad15666874405e8c1bbc1d4
--
Kees Cook
Powered by blists - more mailing lists