kvm: validate context for kvm cpu get/put operations
Validate that KVM vcpu state is only read/written from cpu thread itself or that cpu is stopped. Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com> Signed-off-by: Avi Kivity <avi@redhat.com>
This commit is contained in:
parent
ced6c05143
commit
dbaa07c404
@ -949,6 +949,8 @@ int kvm_arch_put_registers(CPUState *env, int level)
|
|||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
assert(cpu_is_stopped(env) || qemu_cpu_self(env));
|
||||||
|
|
||||||
ret = kvm_getput_regs(env, 1);
|
ret = kvm_getput_regs(env, 1);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
return ret;
|
return ret;
|
||||||
@ -991,6 +993,8 @@ int kvm_arch_get_registers(CPUState *env)
|
|||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
assert(cpu_is_stopped(env) || qemu_cpu_self(env));
|
||||||
|
|
||||||
ret = kvm_getput_regs(env, 0);
|
ret = kvm_getput_regs(env, 0);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
return ret;
|
return ret;
|
||||||
|
Loading…
Reference in New Issue
Block a user