This patch adds a hardware capability for the Ultravisor. This capability will be present if facility 158 is enabled. Signed-off-by: Steffen Eiden <seiden@xxxxxxxxxxxxx> --- arch/s390/include/asm/elf.h | 2 ++ arch/s390/kernel/processor.c | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/arch/s390/include/asm/elf.h b/arch/s390/include/asm/elf.h index 70a30ae258b7..3a5e89ce4fd0 100644 --- a/arch/s390/include/asm/elf.h +++ b/arch/s390/include/asm/elf.h @@ -115,6 +115,7 @@ enum { HWCAP_NR_NNPA = 20, HWCAP_NR_PCI_MIO = 21, HWCAP_NR_SIE = 22, + HWCAP_NR_UV = 23, HWCAP_NR_MAX }; @@ -142,6 +143,7 @@ enum { #define HWCAP_NNPA BIT(HWCAP_NR_NNPA) #define HWCAP_PCI_MIO BIT(HWCAP_NR_PCI_MIO) #define HWCAP_SIE BIT(HWCAP_NR_SIE) +#define HWCAP_UV BIT(HWCAP_NR_UV) /* * These are used to set parameters in the core dumps. diff --git a/arch/s390/kernel/processor.c b/arch/s390/kernel/processor.c index aa0e0e7fc773..80ccd57a2b00 100644 --- a/arch/s390/kernel/processor.c +++ b/arch/s390/kernel/processor.c @@ -141,6 +141,7 @@ static void show_cpu_summary(struct seq_file *m, void *v) [HWCAP_NR_NNPA] = "nnpa", [HWCAP_NR_PCI_MIO] = "pcimio", [HWCAP_NR_SIE] = "sie", + [HWCAP_NR_UV] = "uv", }; int i, cpu; @@ -249,6 +250,10 @@ static int __init setup_hwcaps(void) if (sclp.has_sief2) elf_hwcap |= HWCAP_SIE; + /* ultravisor-call (secure execution) */ + if (test_facility(158)) + elf_hwcap |= HWCAP_UV; + return 0; } arch_initcall(setup_hwcaps); -- 2.35.3