mirror-linux/Documentation/virt/kvm
Jacky Li d8da2da21f crypto: ccp - Initialize PSP when reading psp data file failed
Currently the OS fails the PSP initialization when the file specified at
'init_ex_path' does not exist or has invalid content. However the SEV
spec just requires users to allocate 32KB of 0xFF in the file, which can
be taken care of by the OS easily.

To improve the robustness during the PSP init, leverage the retry
mechanism and continue the init process:

Before the first INIT_EX call, if the content is invalid or missing,
continue the process by feeding those contents into PSP instead of
aborting. PSP will then override it with 32KB 0xFF and return
SEV_RET_SECURE_DATA_INVALID status code. In the second INIT_EX call,
this 32KB 0xFF content will then be fed and PSP will write the valid
data to the file.

In order to do this, sev_read_init_ex_file should only be called once
for the first INIT_EX call. Calling it again for the second INIT_EX call
will cause the invalid file content overwriting the valid 32KB 0xFF data
provided by PSP in the first INIT_EX call.

Co-developed-by: Peter Gonda <pgonda@google.com>
Signed-off-by: Peter Gonda <pgonda@google.com>
Signed-off-by: Jacky Li <jackyli@google.com>
Reported-by: Alper Gun <alpergun@google.com>
Acked-by: David Rientjes <rientjes@google.com>
Acked-by: Tom Lendacky <thomas.lendacky@amd.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2022-08-26 18:50:07 +08:00
..
arm arm64: Rename the VHE switch to "finalise_el2" 2022-07-01 15:22:51 +01:00
devices Merge branch kvm-arm64/misc-5.18 into kvmarm-master/next 2022-03-09 11:16:48 +00:00
s390 ARM: 2022-08-04 14:59:54 -07:00
x86 crypto: ccp - Initialize PSP when reading psp data file failed 2022-08-26 18:50:07 +08:00
api.rst KVM: x86/MMU: properly format KVM_CAP_VM_DISABLE_NX_HUGE_PAGES capability table 2022-08-11 02:35:37 -04:00
index.rst Documentation: KVM: add separate directories for architecture-specific documentation 2022-03-29 13:21:20 -04:00
locking.rst Documentation: kvm: include new locks 2022-03-29 13:21:19 -04:00
ppc-pv.rst docs: kvm: Convert ppc-pv.txt to ReST format 2020-02-12 20:10:05 +01:00
review-checklist.rst docs: fix broken references for ReST files that moved around 2020-04-20 15:45:03 -06:00
vcpu-requests.rst Documentation: KVM: Add SPDX-License-Identifier tag 2022-04-11 13:28:56 -04:00