diff options
author | Peter Zijlstra <peterz@infradead.org> | 2021-12-04 14:43:43 +0100 |
---|---|---|
committer | Borislav Petkov <bp@suse.de> | 2021-12-09 11:04:50 +0100 |
commit | 26c44b776dba4ac692a0bf5a3836feb8a63fea6b (patch) | |
tree | b8a2014f125f8adc56d5c9b01b6e9fd1837daab3 /arch/x86/kernel/static_call.c | |
parent | objtool: Add straight-line-speculation validation (diff) | |
download | linux-26c44b776dba4ac692a0bf5a3836feb8a63fea6b.tar.xz linux-26c44b776dba4ac692a0bf5a3836feb8a63fea6b.zip |
x86/alternative: Relax text_poke_bp() constraint
Currently, text_poke_bp() is very strict to only allow patching a
single instruction; however with straight-line-speculation it will be
required to patch: ret; int3, which is two instructions.
As such, relax the constraints a little to allow int3 padding for all
instructions that do not imply the execution of the next instruction,
ie: RET, JMP.d8 and JMP.d32.
While there, rename the text_poke_loc::rel32 field to ::disp.
Note: this fills up the text_poke_loc structure which is now a round
16 bytes big.
[ bp: Put comments ontop instead of on the side. ]
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lore.kernel.org/r/20211204134908.082342723@infradead.org
Diffstat (limited to 'arch/x86/kernel/static_call.c')
0 files changed, 0 insertions, 0 deletions