kvm: x86: Adjust PC to remove the CS segment base address
authorAndreas Sandberg <andreas@sandberg.pp.se>
Sun, 16 Mar 2014 16:30:24 +0000 (17:30 +0100)
committerAndreas Sandberg <andreas@sandberg.pp.se>
Sun, 16 Mar 2014 16:30:24 +0000 (17:30 +0100)
commit5db547bca46f23aa5cf25aa5d38efae9ef1eabc2
tree01db21e126164a21473bc5e4aecca88520562ca3
parentf791e7b313c6f5c2b30f96c35f675d523def8a3a
kvm: x86: Adjust PC to remove the CS segment base address

gem5 seems to store the PC as RIP+CS_BASE. This is not what KVM
expects, so we need to subtract CS_BASE prior to transferring the PC
into KVM. This changeset adds the necessary PC manipulation and
refactors thread context updates slightly to avoid reading registers
multiple times from KVM.

--HG--
extra : rebase_source : 3f0569dca06a1fcd8694925f75c8918d954ada44
src/cpu/kvm/x86_cpu.cc
src/cpu/kvm/x86_cpu.hh