From: Catalin Marinas <catalin.marinas@arm.com>
To: Guenter Roeck <linux@roeck-us.net>
Cc: "Daniel Díaz" <daniel.diaz@linaro.org>,
tytso@mit.edu, "Linus Torvalds" <torvalds@linux-foundation.org>,
linux-kernel@vger.kernel.org, "Mark Brown" <broonie@kernel.org>,
"Qian Cai" <cai@lca.pw>, "Will Deacon" <will@kernel.org>,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v2] arm64: kaslr: Use standard early random function
Date: Fri, 7 Aug 2020 18:35:14 +0100 [thread overview]
Message-ID: <20200807173513.GR6750@gaia> (raw)
In-Reply-To: <20200807144521.34732-1-linux@roeck-us.net>
On Fri, Aug 07, 2020 at 07:45:21AM -0700, Guenter Roeck wrote:
> Commit 585524081ecd ("random: random.h should include archrandom.h, not
> the other way around") tries to fix a problem with recursive inclusion
> of linux/random.h and arch/archrandom.h for arm64. Unfortunately, this
> results in the following compile error if ARCH_RANDOM is disabled.
>
> arch/arm64/kernel/kaslr.c: In function 'kaslr_early_init':
> arch/arm64/kernel/kaslr.c:128:6: error: implicit declaration of function
> '__early_cpu_has_rndr'; did you mean '__early_pfn_to_nid'?
> [-Werror=implicit-function-declaration]
> if (__early_cpu_has_rndr()) {
> ^~~~~~~~~~~~~~~~~~~~
> __early_pfn_to_nid
> arch/arm64/kernel/kaslr.c:131:7: error: implicit declaration of function
> '__arm64_rndr' [-Werror=implicit-function-declaration]
> if (__arm64_rndr(&raw))
> ^~~~~~~~~~~~
>
> Problem is that arch/archrandom.h is only included from linux/random.h if
> ARCH_RANDOM is enabled. If not, __arm64_rndr() and __early_cpu_has_rndr()
> are undeclared, causing the problem.
>
> Use arch_get_random_seed_long_early() instead of arm64 specific functions
> to solve the problem.
>
> Reported-by: Qian Cai <cai@lca.pw>
> Fixes: 585524081ecd ("random: random.h should include archrandom.h, not the other way around")
> Cc: Qian Cai <cai@lca.pw>
> Cc: Mark Brown <broonie@kernel.org>
> Reviewed-by: Mark Rutland <mark.rutland@arm.com>
> Reviewed-by: Mark Brown <broonie@kernel.org>
> Tested-by: Mark Brown <broonie@kernel.org>
> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Linus, could you please pick this up directly? Otherwise, it will wait
until we reach -rc1 to avoid basing a branch on a random commit.
(at the moment I can't build Linus' tree at all, fails early with some
device tree errors)
Thanks.
--
Catalin
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: Catalin Marinas <catalin.marinas@arm.com>
To: Guenter Roeck <linux@roeck-us.net>
Cc: "Linus Torvalds" <torvalds@linux-foundation.org>,
"Will Deacon" <will@kernel.org>,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org,
"Daniel Díaz" <daniel.diaz@linaro.org>,
tytso@mit.edu, "Qian Cai" <cai@lca.pw>,
"Mark Brown" <broonie@kernel.org>
Subject: Re: [PATCH v2] arm64: kaslr: Use standard early random function
Date: Fri, 7 Aug 2020 18:35:14 +0100 [thread overview]
Message-ID: <20200807173513.GR6750@gaia> (raw)
In-Reply-To: <20200807144521.34732-1-linux@roeck-us.net>
On Fri, Aug 07, 2020 at 07:45:21AM -0700, Guenter Roeck wrote:
> Commit 585524081ecd ("random: random.h should include archrandom.h, not
> the other way around") tries to fix a problem with recursive inclusion
> of linux/random.h and arch/archrandom.h for arm64. Unfortunately, this
> results in the following compile error if ARCH_RANDOM is disabled.
>
> arch/arm64/kernel/kaslr.c: In function 'kaslr_early_init':
> arch/arm64/kernel/kaslr.c:128:6: error: implicit declaration of function
> '__early_cpu_has_rndr'; did you mean '__early_pfn_to_nid'?
> [-Werror=implicit-function-declaration]
> if (__early_cpu_has_rndr()) {
> ^~~~~~~~~~~~~~~~~~~~
> __early_pfn_to_nid
> arch/arm64/kernel/kaslr.c:131:7: error: implicit declaration of function
> '__arm64_rndr' [-Werror=implicit-function-declaration]
> if (__arm64_rndr(&raw))
> ^~~~~~~~~~~~
>
> Problem is that arch/archrandom.h is only included from linux/random.h if
> ARCH_RANDOM is enabled. If not, __arm64_rndr() and __early_cpu_has_rndr()
> are undeclared, causing the problem.
>
> Use arch_get_random_seed_long_early() instead of arm64 specific functions
> to solve the problem.
>
> Reported-by: Qian Cai <cai@lca.pw>
> Fixes: 585524081ecd ("random: random.h should include archrandom.h, not the other way around")
> Cc: Qian Cai <cai@lca.pw>
> Cc: Mark Brown <broonie@kernel.org>
> Reviewed-by: Mark Rutland <mark.rutland@arm.com>
> Reviewed-by: Mark Brown <broonie@kernel.org>
> Tested-by: Mark Brown <broonie@kernel.org>
> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Linus, could you please pick this up directly? Otherwise, it will wait
until we reach -rc1 to avoid basing a branch on a random commit.
(at the moment I can't build Linus' tree at all, fails early with some
device tree errors)
Thanks.
--
Catalin
next prev parent reply other threads:[~2020-08-07 17:37 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-07 14:45 [PATCH v2] arm64: kaslr: Use standard early random function Guenter Roeck
2020-08-07 14:45 ` Guenter Roeck
2020-08-07 17:35 ` Catalin Marinas [this message]
2020-08-07 17:35 ` Catalin Marinas
2020-08-07 17:48 ` Linus Torvalds
2020-08-07 17:48 ` Linus Torvalds
2020-08-07 18:09 ` Catalin Marinas
2020-08-07 18:09 ` Catalin Marinas
2020-08-07 18:00 ` Guenter Roeck
2020-08-07 18:00 ` Guenter Roeck
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200807173513.GR6750@gaia \
--to=catalin.marinas@arm.com \
--cc=broonie@kernel.org \
--cc=cai@lca.pw \
--cc=daniel.diaz@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=torvalds@linux-foundation.org \
--cc=tytso@mit.edu \
--cc=will@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.