diff mbox series

s390: vmlinux.lds: move JUMP_TABLE_DATA into output section

Message ID 20180930164950.3841-1-ard.biesheuvel@linaro.org
State Accepted
Commit 57d15877033e44e9ac283b8c6e82cc67bf6a0aa6
Headers show
Series s390: vmlinux.lds: move JUMP_TABLE_DATA into output section | expand

Commit Message

Ard Biesheuvel Sept. 30, 2018, 4:49 p.m. UTC
Commit e872267b8bcbb179 ("jump_table: move entries into ro_after_init
region") moved the __jump_table input section into the __ro_after_init
output section, but inadvertently put the macro in the wrong place in
the s390 linker script. Let's fix that.

Fixes: e872267b8bcbb179 ("jump_table: move entries into ro_after_init region")
Reported-by: Guenter Roeck <linux@roeck-us.net>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Jessica Yu <jeyu@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

---
 arch/s390/kernel/vmlinux.lds.S | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

-- 
2.17.1

Comments

Kees Cook Sept. 30, 2018, 4:55 p.m. UTC | #1
On Sun, Sep 30, 2018 at 9:49 AM, Ard Biesheuvel
<ard.biesheuvel@linaro.org> wrote:
> Commit e872267b8bcbb179 ("jump_table: move entries into ro_after_init

> region") moved the __jump_table input section into the __ro_after_init

> output section, but inadvertently put the macro in the wrong place in

> the s390 linker script. Let's fix that.

>

> Fixes: e872267b8bcbb179 ("jump_table: move entries into ro_after_init region")

> Reported-by: Guenter Roeck <linux@roeck-us.net>

> Cc: Heiko Carstens <heiko.carstens@de.ibm.com>

> Cc: Kees Cook <keescook@chromium.org>

> Cc: Thomas Gleixner <tglx@linutronix.de>

> Cc: Ingo Molnar <mingo@redhat.com>

> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>

> Cc: Jessica Yu <jeyu@kernel.org>

> Cc: Peter Zijlstra <peterz@infradead.org>

> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>


Reviewed-by: Kees Cook <keescook@chromium.org>


-Kees

> ---

>  arch/s390/kernel/vmlinux.lds.S | 2 +-

>  1 file changed, 1 insertion(+), 1 deletion(-)

>

> diff --git a/arch/s390/kernel/vmlinux.lds.S b/arch/s390/kernel/vmlinux.lds.S

> index 4042bbf3f9ad..457713f48734 100644

> --- a/arch/s390/kernel/vmlinux.lds.S

> +++ b/arch/s390/kernel/vmlinux.lds.S

> @@ -64,9 +64,9 @@ SECTIONS

>         __start_ro_after_init = .;

>         .data..ro_after_init : {

>                  *(.data..ro_after_init)

> +               JUMP_TABLE_DATA

>         }

>         EXCEPTION_TABLE(16)

> -       JUMP_TABLE_DATA

>         . = ALIGN(PAGE_SIZE);

>         __end_ro_after_init = .;

>

> --

> 2.17.1

>




-- 
Kees Cook
Pixel Security
Heiko Carstens Oct. 1, 2018, 8:25 p.m. UTC | #2
On Sun, Sep 30, 2018 at 06:49:50PM +0200, Ard Biesheuvel wrote:
> Commit e872267b8bcbb179 ("jump_table: move entries into ro_after_init

> region") moved the __jump_table input section into the __ro_after_init

> output section, but inadvertently put the macro in the wrong place in

> the s390 linker script. Let's fix that.

> 

> Fixes: e872267b8bcbb179 ("jump_table: move entries into ro_after_init region")

> Reported-by: Guenter Roeck <linux@roeck-us.net>

> Cc: Heiko Carstens <heiko.carstens@de.ibm.com>

> Cc: Kees Cook <keescook@chromium.org>

> Cc: Thomas Gleixner <tglx@linutronix.de>

> Cc: Ingo Molnar <mingo@redhat.com>

> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>

> Cc: Jessica Yu <jeyu@kernel.org>

> Cc: Peter Zijlstra <peterz@infradead.org>

> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

> ---

>  arch/s390/kernel/vmlinux.lds.S | 2 +-

>  1 file changed, 1 insertion(+), 1 deletion(-)


Acked-by: Heiko Carstens <heiko.carstens@de.ibm.com>


I don't think this is very obvious, but this fixes current build breakage
in linux-next and I assume Thomas should pick this up.

> diff --git a/arch/s390/kernel/vmlinux.lds.S b/arch/s390/kernel/vmlinux.lds.S

> index 4042bbf3f9ad..457713f48734 100644

> --- a/arch/s390/kernel/vmlinux.lds.S

> +++ b/arch/s390/kernel/vmlinux.lds.S

> @@ -64,9 +64,9 @@ SECTIONS

>  	__start_ro_after_init = .;

>  	.data..ro_after_init : {

>  		 *(.data..ro_after_init)

> +		JUMP_TABLE_DATA

>  	}

>  	EXCEPTION_TABLE(16)

> -	JUMP_TABLE_DATA

>  	. = ALIGN(PAGE_SIZE);

>  	__end_ro_after_init = .;

> 

> -- 

> 2.17.1

>
Ard Biesheuvel Oct. 2, 2018, 5:48 a.m. UTC | #3
On 1 October 2018 at 22:25, Heiko Carstens <heiko.carstens@de.ibm.com> wrote:
> On Sun, Sep 30, 2018 at 06:49:50PM +0200, Ard Biesheuvel wrote:

>> Commit e872267b8bcbb179 ("jump_table: move entries into ro_after_init

>> region") moved the __jump_table input section into the __ro_after_init

>> output section, but inadvertently put the macro in the wrong place in

>> the s390 linker script. Let's fix that.

>>

>> Fixes: e872267b8bcbb179 ("jump_table: move entries into ro_after_init region")

>> Reported-by: Guenter Roeck <linux@roeck-us.net>

>> Cc: Heiko Carstens <heiko.carstens@de.ibm.com>

>> Cc: Kees Cook <keescook@chromium.org>

>> Cc: Thomas Gleixner <tglx@linutronix.de>

>> Cc: Ingo Molnar <mingo@redhat.com>

>> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>

>> Cc: Jessica Yu <jeyu@kernel.org>

>> Cc: Peter Zijlstra <peterz@infradead.org>

>> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

>> ---

>>  arch/s390/kernel/vmlinux.lds.S | 2 +-

>>  1 file changed, 1 insertion(+), 1 deletion(-)

>

> Acked-by: Heiko Carstens <heiko.carstens@de.ibm.com>

>

> I don't think this is very obvious, but this fixes current build breakage

> in linux-next and I assume Thomas should pick this up.

>


Indeed.

Thomas, Ingo,

Could you please take this fix for the jump lable changes queued in
-next, and the other one I sent out yesterday [0], through core/core
in tip.git as before?

Thanks,
Ard.

[0] https://lore.kernel.org/lkml/20181001081324.11553-1-ard.biesheuvel@linaro.org/
diff mbox series

Patch

diff --git a/arch/s390/kernel/vmlinux.lds.S b/arch/s390/kernel/vmlinux.lds.S
index 4042bbf3f9ad..457713f48734 100644
--- a/arch/s390/kernel/vmlinux.lds.S
+++ b/arch/s390/kernel/vmlinux.lds.S
@@ -64,9 +64,9 @@  SECTIONS
 	__start_ro_after_init = .;
 	.data..ro_after_init : {
 		 *(.data..ro_after_init)
+		JUMP_TABLE_DATA
 	}
 	EXCEPTION_TABLE(16)
-	JUMP_TABLE_DATA
 	. = ALIGN(PAGE_SIZE);
 	__end_ro_after_init = .;