[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20200330141430.GC20969@lakrids.cambridge.arm.com>
Date: Mon, 30 Mar 2020 15:14:30 +0100
From: Mark Rutland <mark.rutland@....com>
To: "Theodore Y. Ts'o" <tytso@....edu>
Cc: Alexander Sverdlin <alexander.sverdlin@...il.com>,
linux-kernel@...r.kernel.org, Arnd Bergmann <arnd@...db.de>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Herbert Xu <herbert@...dor.apana.org.au>
Subject: Re: [PATCH] random: Drop ARCH limitations for CONFIG_RANDOM_TRUST_CPU
On Sun, Mar 29, 2020 at 12:56:24PM -0400, Theodore Y. Ts'o wrote:
> On Sun, Mar 29, 2020 at 10:29:09AM +0200, Alexander Sverdlin wrote:
> > The option itself looks attractive for the embedded devices which often
> > have HWRNG but less entropy from user-input. And these devices are often
> > ARM/ARM64 or MIPS. The reason to limit it to X86/S390/PPC is not obvious.
> >
> > Signed-off-by: Alexander Sverdlin <alexander.sverdlin@...il.com>
>
> This feature is *only* applicable if the CPU supports a
> arch_get_random_seed_long() or arch_get_random_long(). I believe
> there are some server-class ARM64 CPU's that support such an
> instruction, but I don't believe any of the embedded arm64 --- and
> certainly non of the embedded arm --- SOC's support
> arch_get_random_long().
>
> The reason why we limited it to X86/S390/PPC is because those were the
> platforms which supported an RDRAND-like instruction at the time.
> Richard Henderson added support for ARM64 in commit 1a50ec0b3b2e
> ("arm64: Implement archrandom.h for ARMv8.5-RNG") in late January 2020.
>
> So we should either add ARM64 to the dependency list, or we could, as
> you suggest, simply remove the dependency altogether. The tradeoff is
> that it will cause an extra CONFIG prompt on a number of platforms
> (mips, arm, sparc, etc.) where it will be utterly pointless since
> those architectures have no chance of support a RDRAND-like
> instruction.
Just for anyone watching, the dependency rework is already handled in
linux-next by commit:
23ae0c17b89cfeb5 ("random: Make RANDOM_TRUST_CPU depend on ARCH_RANDOM")
... where x86, s390, ppc, and arm64 all select ARCH_RANDOM.
Mark.
Powered by blists - more mailing lists