static int shutdown_interception(struct kvm_vcpu *vcpu)
{
	struct kvm_run *kvm_run = vcpu->run;
	struct vcpu_svm *svm = to_svm(vcpu);

	/*
	 * The VM save area has already been encrypted so it
	 * cannot be reinitialized - just terminate.
	 */
	if (sev_es_guest(vcpu->kvm))
		return -EINVAL;

	/*
	 * VMCB is undefined after a SHUTDOWN intercept
	 * so reinitialize it.
	 */
	clear_page(svm->vmcb);
	init_vmcb(vcpu);

	kvm_run->exit_reason = KVM_EXIT_SHUTDOWN;
	return 0;
}
static int shutdown_interception(struct kvm_vcpu *vcpu)
{
	struct kvm_run *kvm_run = vcpu->run;
	struct vcpu_svm *svm = to_svm(vcpu);

	 
	if (sev_es_guest(vcpu->kvm))
		return -EINVAL;

	 
	clear_page(svm->vmcb);
	init_vmcb(vcpu);

	kvm_run->exit_reason = KVM_EXIT_SHUTDOWN;
	return 0;
}