diff options
author | Sean Christopherson | 2022-05-26 21:08:12 +0000 |
---|---|---|
committer | Paolo Bonzini | 2022-06-10 10:01:30 -0400 |
commit | a5ba67b42f07952ec45755bbdd66d7c6e49f555c (patch) | |
tree | 922211d5ab8816c492fa1a941f9842e43a23ff19 /security | |
parent | dfe21e6bc05af433308bc1842da28a8fe28faaa4 (diff) |
KVM: x86: Omit VCPU_REGS_RIP from emulator's _regs array
Omit RIP from the emulator's _regs array, which is used only for GPRs,
i.e. registers that can be referenced via ModRM and/or SIB bytes. The
emulator uses the dedicated _eip field for RIP, and manually reads from
_eip to handle RIP-relative addressing.
To avoid an even bigger, slightly more dangerous change, hardcode the
number of GPRs to 16 for the time being even though 32-bit KVM's emulator
technically should only have 8 GPRs. Add a TODO to address that in a
future commit.
See also the comments above the read_gpr() and write_gpr() declarations,
and obviously the handling in writeback_registers().
No functional change intended.
Signed-off-by: Sean Christopherson <seanjc@google.com>
Reviewed-by: Kees Cook <keescook@chromium.org>
Message-Id: <20220526210817.3428868-4-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'security')
0 files changed, 0 insertions, 0 deletions