summaryrefslogtreecommitdiff
path: root/arch/x86/include/asm/paravirt.h
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2021-11-11 15:40:26 +0300
committerPaolo Bonzini <pbonzini@redhat.com>2021-11-11 15:40:26 +0300
commitb9ecb9a997333f90236cb6f3d52d83987a17addc (patch)
tree9d4c34b26ba67337923c8681daf32d1b162426c8 /arch/x86/include/asm/paravirt.h
parentdebe436e77c72fcee804fb867f275e6d31aa999c (diff)
parent73f1b4fece216c2e72be74c4d0d0f71a0b944bec (diff)
downloadlinux-b9ecb9a997333f90236cb6f3d52d83987a17addc.tar.xz
Merge branch 'kvm-guest-sev-migration' into kvm-master
Add guest api and guest kernel support for SEV live migration. Introduces a new hypercall to notify the host of changes to the page encryption status. If the page is encrypted then it must be migrated through the SEV firmware or a helper VM sharing the key. If page is not encrypted then it can be migrated normally by userspace. This new hypercall is invoked using paravirt_ops. Conflicts: sev_active() replaced by cc_platform_has(CC_ATTR_GUEST_MEM_ENCRYPT).
Diffstat (limited to 'arch/x86/include/asm/paravirt.h')
-rw-r--r--arch/x86/include/asm/paravirt.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/x86/include/asm/paravirt.h b/arch/x86/include/asm/paravirt.h
index cebec95a7124..21c4a694ca11 100644
--- a/arch/x86/include/asm/paravirt.h
+++ b/arch/x86/include/asm/paravirt.h
@@ -97,6 +97,12 @@ static inline void paravirt_arch_exit_mmap(struct mm_struct *mm)
PVOP_VCALL1(mmu.exit_mmap, mm);
}
+static inline void notify_page_enc_status_changed(unsigned long pfn,
+ int npages, bool enc)
+{
+ PVOP_VCALL3(mmu.notify_page_enc_status_changed, pfn, npages, enc);
+}
+
#ifdef CONFIG_PARAVIRT_XXL
static inline void load_sp0(unsigned long sp0)
{