alternative.c (cf1489984641369611556bf00c48f945c77bcf02) | alternative.c (d768bd892fc8f066cd3aa000eb1867bcf32db0ee) |
---|---|
1// SPDX-License-Identifier: GPL-2.0 2#include <linux/module.h> 3#include <asm/alternative.h> 4#include <asm/facility.h> 5 6#define MAX_PATCH_LEN (255 - 1) 7 8static int __initdata_or_module alt_instr_disabled; 9 10static int __init disable_alternative_instructions(char *str) 11{ 12 alt_instr_disabled = 1; 13 return 0; 14} 15 16early_param("noaltinstr", disable_alternative_instructions); 17 | 1// SPDX-License-Identifier: GPL-2.0 2#include <linux/module.h> 3#include <asm/alternative.h> 4#include <asm/facility.h> 5 6#define MAX_PATCH_LEN (255 - 1) 7 8static int __initdata_or_module alt_instr_disabled; 9 10static int __init disable_alternative_instructions(char *str) 11{ 12 alt_instr_disabled = 1; 13 return 0; 14} 15 16early_param("noaltinstr", disable_alternative_instructions); 17 |
18static int __init nobp_setup_early(char *str) 19{ 20 bool enabled; 21 int rc; 22 23 rc = kstrtobool(str, &enabled); 24 if (rc) 25 return rc; 26 if (enabled && test_facility(82)) 27 __set_facility(82, S390_lowcore.alt_stfle_fac_list); 28 else 29 __clear_facility(82, S390_lowcore.alt_stfle_fac_list); 30 return 0; 31} 32early_param("nobp", nobp_setup_early); 33 34static int __init nospec_setup_early(char *str) 35{ 36 __clear_facility(82, S390_lowcore.alt_stfle_fac_list); 37 return 0; 38} 39early_param("nospec", nospec_setup_early); 40 |
|
18struct brcl_insn { 19 u16 opc; 20 s32 disp; 21} __packed; 22 23static u16 __initdata_or_module nop16 = 0x0700; 24static u32 __initdata_or_module nop32 = 0x47000000; 25static struct brcl_insn __initdata_or_module nop48 = { --- 87 unchanged lines hidden --- | 41struct brcl_insn { 42 u16 opc; 43 s32 disp; 44} __packed; 45 46static u16 __initdata_or_module nop16 = 0x0700; 47static u32 __initdata_or_module nop32 = 0x47000000; 48static struct brcl_insn __initdata_or_module nop48 = { --- 87 unchanged lines hidden --- |