Re: [PATCH tip v8] x86/setup: Use rng seeds from setup_data

From: H. Peter Anvin
Date: Sat Jul 09 2022 - 18:41:53 EST


On 7/9/22 14:57, Borislav Petkov wrote:
On Sat, Jul 09, 2022 at 02:45:24PM -0700, H. Peter Anvin wrote:
On 7/9/22 02:49, Borislav Petkov wrote:
On Fri, Jul 08, 2022 at 06:51:16PM -0700, H. Peter Anvin wrote:
#define SETUP_ENUM_MAX SETUP_RNG_SEED
#define SETUP_INDIRECT (1<<31)
#define SETUP_TYPE_MAX (SETUP_ENUM_MAX | SETUP_INDIRECT)

Wait, if we get to add a new number, SETUP_ENUM_MAX and thus
SETUP_TYPE_MAX will change. And they're uapi too...

Talking API here rather than ABI, i.e. the semantics of those symbols.

Sure but do we worry about some userspace including those headers and
relying on the SETUP_ENUM_MAX number?

Or is userspace required to be recompiled against newer uapi headers?


In ABI/API terms, that symbol has the semantic of connecting the API version to the underlying ABI version; a piece of code that sees an enumeration type > SETUP_ENUM_MAX must by definition treat it as an opaque blob. In the future, should it become warranted, we may add flags that indicate how unaware code should handle them, but I don't think we can engineer that right now.

-hpa