KVM: SEV: remove ghcb variable declarations
authorPaolo Bonzini <pbonzini@redhat.com>
Fri, 4 Aug 2023 17:01:43 +0000 (13:01 -0400)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 4 Aug 2023 17:33:07 +0000 (13:33 -0400)
commit63dbc67cf4ed11f94b2e8dde34b41438a3cb3d83
tree5e1b7b5bd857b8380199887991e7dae9cedef4df
parent7588dbcebcbf0193ab5b76987396d0254270b04a
KVM: SEV: remove ghcb variable declarations

To avoid possible time-of-check/time-of-use issues, the GHCB should
almost never be accessed outside dump_ghcb, sev_es_sync_to_ghcb
and sev_es_sync_from_ghcb.  The only legitimate uses are to set the
exitinfo fields and to find the address of the scratch area embedded
in the ghcb.  Accessing ghcb_usage also goes through svm->sev_es.ghcb
in sev_es_validate_vmgexit(), but that is because anyway the value is
not used.

Removing a shortcut variable that contains the value of svm->sev_es.ghcb
makes these cases a bit more verbose, but it limits the chance of someone
reading the ghcb by mistake.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/svm/sev.c