summaryrefslogtreecommitdiffstats
path: root/scripts/objdiff
diff options
context:
space:
mode:
authorBrijesh Singh <brijesh.singh@amd.com>2022-04-26 18:53:13 +0000
committerSuravee Suthikulpanit <suravee.suthikulpanit@amd.com>2022-07-13 17:27:29 -0500
commitcffc69f961f5a877e0b10296833afc8260ee73a1 (patch)
tree6794fbf215481fb4028dff438c51e4c1580fd9c7 /scripts/objdiff
parent9e49becd3c0c8b955fdaad0c318c2189a8c28101 (diff)
downloadcachepc-linux-cffc69f961f5a877e0b10296833afc8260ee73a1.tar.gz
cachepc-linux-cffc69f961f5a877e0b10296833afc8260ee73a1.zip
KVM: SVM: Remove the long-lived GHCB host map
On VMGEXIT, sev_handle_vmgexit() creates a host mapping for the GHCB GPA, and unmaps it just before VM-entry. This long-lived GHCB map is used by the VMGEXIT handler through accessors such as ghcb_{set_get}_xxx(). A long-lived GHCB map can cause issue when SEV-SNP is enabled. When SEV-SNP is enabled the mapped GPA needs to be protected against a page state change. To eliminate the long-lived GHCB mapping, update the GHCB sync operations to explicitly map the GHCB before access and unmap it after access is complete. This requires that the setting of the GHCBs sw_exit_info_{1,2} fields be done during sev_es_sync_to_ghcb(), so create two new fields in the vcpu_svm struct to hold these values when required to be set outside of the GHCB mapping. Signed-off-by: Brijesh Singh <brijesh.singh@amd.com>
Diffstat (limited to 'scripts/objdiff')
0 files changed, 0 insertions, 0 deletions