Commit 136bc039 authored by Thiago Jung Bauermann's avatar Thiago Jung Bauermann Committed by Michael Ellerman
Browse files

powerpc/pseries: Introduce option to build secure virtual machines



Introduce CONFIG_PPC_SVM to control support for secure guests and include
Ultravisor-related helpers when it is selected

Signed-off-by: default avatarThiago Jung Bauermann <bauerman@linux.ibm.com>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20190820021326.6884-3-bauerman@linux.ibm.com
parent 9044adca
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -36,7 +36,7 @@ void __trace_hcall_entry(unsigned long opcode, unsigned long *args);
void __trace_hcall_exit(long opcode, long retval, unsigned long *retbuf);
void __trace_hcall_exit(long opcode, long retval, unsigned long *retbuf);


/* Ultravisor */
/* Ultravisor */
#ifdef CONFIG_PPC_POWERNV
#if defined(CONFIG_PPC_POWERNV) || defined(CONFIG_PPC_SVM)
long ucall_norets(unsigned long opcode, ...);
long ucall_norets(unsigned long opcode, ...);
#else
#else
static inline long ucall_norets(unsigned long opcode, ...)
static inline long ucall_norets(unsigned long opcode, ...)
+3 −1
Original line number Original line Diff line number Diff line
@@ -156,7 +156,9 @@ endif


obj-$(CONFIG_EPAPR_PARAVIRT)	+= epapr_paravirt.o epapr_hcalls.o
obj-$(CONFIG_EPAPR_PARAVIRT)	+= epapr_paravirt.o epapr_hcalls.o
obj-$(CONFIG_KVM_GUEST)		+= kvm.o kvm_emul.o
obj-$(CONFIG_KVM_GUEST)		+= kvm.o kvm_emul.o
obj-$(CONFIG_PPC_POWERNV)	+= ucall.o
ifneq ($(CONFIG_PPC_POWERNV)$(CONFIG_PPC_SVM),)
obj-y				+= ucall.o
endif


# Disable GCOV, KCOV & sanitizers in odd or sensitive code
# Disable GCOV, KCOV & sanitizers in odd or sensitive code
GCOV_PROFILE_prom_init.o := n
GCOV_PROFILE_prom_init.o := n
+11 −0
Original line number Original line Diff line number Diff line
@@ -145,3 +145,14 @@ config PAPR_SCM
	tristate "Support for the PAPR Storage Class Memory interface"
	tristate "Support for the PAPR Storage Class Memory interface"
	help
	help
	  Enable access to hypervisor provided storage class memory.
	  Enable access to hypervisor provided storage class memory.

config PPC_SVM
	bool "Secure virtual machine (SVM) support for POWER"
	depends on PPC_PSERIES
	help
	 There are certain POWER platforms which support secure guests using
	 the Protected Execution Facility, with the help of an Ultravisor
	 executing below the hypervisor layer. This enables support for
	 those guests.

	 If unsure, say "N".