x86/boot/64: Use RIP_REL_REF() to assign 'phys_base'
authorArd Biesheuvel <ardb@kernel.org>
Wed, 21 Feb 2024 11:35:09 +0000 (12:35 +0100)
committerIngo Molnar <mingo@kernel.org>
Mon, 26 Feb 2024 11:58:35 +0000 (12:58 +0100)
commitd9ec1158056bedb6da8f4e02de30d300914b31f8
tree23a1666fa70dbcbe34ddb899ee4d51886fcac870
parent5da793671957e8e99fa74423fab2737bf8c772a8
x86/boot/64: Use RIP_REL_REF() to assign 'phys_base'

'phys_base' is assigned from code that executes from a 1:1 mapping so it
cannot use a plain access from C. Replace the use of fixup_pointer()
with RIP_REL_REF(), which is better and simpler.

While at it, move the assignment to before the addition of the SME mask
so there is no need to subtract it again, and drop the unnecessary
addition ('phys_base' is statically initialized to 0x0)

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://lore.kernel.org/r/20240221113506.2565718-20-ardb+git@google.com
arch/x86/kernel/head64.c