Re: [PATCH] runtime constants: move list of constants to vmlinux.lds.h

From: Alexander Gordeev
Date: Wed Jul 31 2024 - 02:15:41 EST


On Tue, Jul 30, 2024 at 10:15:16PM +0200, Jann Horn wrote:
> Refactor the list of constant variables into a macro.
> This should make it easier to add more constants in the future.
>
> Signed-off-by: Jann Horn <jannh@xxxxxxxxxx>
> ---
> I'm not sure whose tree this has to go through - I guess Arnd's?
> ---
> arch/arm64/kernel/vmlinux.lds.S | 3 +--
> arch/s390/kernel/vmlinux.lds.S | 3 +--
> arch/x86/kernel/vmlinux.lds.S | 3 +--
> include/asm-generic/vmlinux.lds.h | 4 ++++
> 4 files changed, 7 insertions(+), 6 deletions(-)
...
> diff --git a/arch/s390/kernel/vmlinux.lds.S b/arch/s390/kernel/vmlinux.lds.S
> index 975c654cf5a5..3e8ebf1d64c5 100644
> --- a/arch/s390/kernel/vmlinux.lds.S
> +++ b/arch/s390/kernel/vmlinux.lds.S
> @@ -187,14 +187,13 @@ SECTIONS
> _eamode31 = .;
>
> /* early.c uses stsi, which requires page aligned data. */
> . = ALIGN(PAGE_SIZE);
> INIT_DATA_SECTION(0x100)
>
> - RUNTIME_CONST(shift, d_hash_shift)
> - RUNTIME_CONST(ptr, dentry_hashtable)
> + RUNTIME_CONST_VARIABLES
>
> PERCPU_SECTION(0x100)
>
> . = ALIGN(PAGE_SIZE);
> __init_end = .; /* freed after init ends here */
>
...

For s390:

Reviewed-by: Alexander Gordeev <agordeev@xxxxxxxxxxxxx>