[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMj1kXFfVi8sYXR0z42v72XfTBaQ9jaDAzuLuK=TBKHUqKkEPA@mail.gmail.com>
Date: Thu, 16 Jun 2022 13:25:02 +0200
From: Ard Biesheuvel <ardb@...nel.org>
To: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Cc: Peter Zijlstra <peterz@...radead.org>,
Mark Rutland <mark.rutland@....com>,
Thomas Bogendoerfer <tsbogend@...ha.franken.de>,
Heiko Carstens <hca@...ux.ibm.com>,
Vasily Gorbik <gor@...ux.ibm.com>,
Alexander Gordeev <agordeev@...ux.ibm.com>,
Christian Borntraeger <borntraeger@...ux.ibm.com>,
Sven Schnelle <svens@...ux.ibm.com>,
"open list:MIPS" <linux-mips@...r.kernel.org>,
"open list:S390" <linux-s390@...r.kernel.org>
Subject: Re: [PATCH v2 3/3] jump_label: make initial NOP patching the special case
On Wed, 15 Jun 2022 at 17:41, Ard Biesheuvel <ardb@...nel.org> wrote:
>
> Instead of defaulting to patching NOP opcodes at init time, and leaving
> it to the architectures to override this if this is not needed, switch
> to a model where doing nothing is the default. This is the common case
> by far, as only MIPS requires NOP patching at init time. On all other
> architectures, the correct encodings are emitted by the compiler and so
> no initial patching is needed.
>
> Signed-off-by: Ard Biesheuvel <ardb@...nel.org>
> Acked-by: Mark Rutland <mark.rutland@....com>
> Acked-by: Peter Zijlstra (Intel) <peterz@...radead.org>
> ---
> Documentation/staging/static-keys.rst | 3 ---
> arch/arc/kernel/jump_label.c | 13 -------------
> arch/arm/kernel/jump_label.c | 6 ------
> arch/arm64/kernel/jump_label.c | 11 -----------
> arch/mips/include/asm/jump_label.h | 2 ++
> arch/parisc/kernel/jump_label.c | 11 -----------
> arch/riscv/kernel/jump_label.c | 12 ------------
> arch/s390/kernel/jump_label.c | 5 -----
> arch/x86/kernel/jump_label.c | 13 -------------
> kernel/jump_label.c | 14 +++++---------
> 10 files changed, 7 insertions(+), 83 deletions(-)
>
This needs the following hunk as well, as spotted by the bot:
--- a/include/linux/jump_label.h
+++ b/include/linux/jump_label.h
@@ -220,8 +220,6 @@ extern void jump_label_lock(void);
extern void jump_label_unlock(void);
extern void arch_jump_label_transform(struct jump_entry *entry,
enum jump_label_type type);
-extern void arch_jump_label_transform_static(struct jump_entry *entry,
- enum jump_label_type type);
extern bool arch_jump_label_transform_queue(struct jump_entry *entry,
enum jump_label_type type);
extern void arch_jump_label_transform_apply(void);
Let me know if I need to resend for this.
Powered by blists - more mailing lists