diff options
author | Andrea della Porta <andrea.porta@suse.com> | 2024-04-29 12:28:33 +0200 |
---|---|---|
committer | Will Deacon <will@kernel.org> | 2024-05-03 13:08:06 +0100 |
commit | 1279e8d0dcead53cf1f51e926a1cf6d2a79332d6 (patch) | |
tree | fe21cfdec96b549a9925588d77312d07ce89abcb /arch/arm64/kernel/pi | |
parent | 080297beccf77433053621a222c332ae603a1a84 (diff) | |
download | linux-1279e8d0dcead53cf1f51e926a1cf6d2a79332d6.tar.gz linux-1279e8d0dcead53cf1f51e926a1cf6d2a79332d6.tar.bz2 linux-1279e8d0dcead53cf1f51e926a1cf6d2a79332d6.zip |
arm64: Add the arm64.no32bit_el0 command line option
Introducing the field 'el0' to the idreg-override for register
ID_AA64PFR0_EL1. This field is also aliased to the new kernel
command line option 'arm64.no32bit_el0' as a more recognizable
and mnemonic name to disable the execution of 32 bit userspace
applications (i.e. avoid Aarch32 execution state in EL0) from
kernel command line.
Link: https://lore.kernel.org/all/20240207105847.7739-1-andrea.porta@suse.com/
Signed-off-by: Andrea della Porta <andrea.porta@suse.com>
Link: https://lore.kernel.org/r/20240429102833.6426-1-andrea.porta@suse.com
Signed-off-by: Will Deacon <will@kernel.org>
Diffstat (limited to 'arch/arm64/kernel/pi')
-rw-r--r-- | arch/arm64/kernel/pi/idreg-override.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm64/kernel/pi/idreg-override.c b/arch/arm64/kernel/pi/idreg-override.c index aad399796e81..48c1aa456af9 100644 --- a/arch/arm64/kernel/pi/idreg-override.c +++ b/arch/arm64/kernel/pi/idreg-override.c @@ -108,6 +108,7 @@ static const struct ftr_set_desc pfr0 __prel64_initconst = { .override = &id_aa64pfr0_override, .fields = { FIELD("sve", ID_AA64PFR0_EL1_SVE_SHIFT, pfr0_sve_filter), + FIELD("el0", ID_AA64PFR0_EL1_EL0_SHIFT, NULL), {} }, }; @@ -223,6 +224,7 @@ static const struct { { "nokaslr", "arm64_sw.nokaslr=1" }, { "rodata=off", "arm64_sw.rodataoff=1" }, { "arm64.nolva", "id_aa64mmfr2.varange=0" }, + { "arm64.no32bit_el0", "id_aa64pfr0.el0=1" }, }; static int __init parse_hexdigit(const char *p, u64 *v) |