diff options
author | Keir Fraser <keir@xen.org> | 2012-01-22 10:20:03 +0000 |
---|---|---|
committer | Keir Fraser <keir@xen.org> | 2012-01-22 10:20:03 +0000 |
commit | 9346f6cfbfb992b4fb38b802b794f194f1209dbf (patch) | |
tree | 474c02eeb700382ec999001d1ae71a342e0bcb43 /xen/common/domain.c | |
parent | acbae3dcf66c00c03cfbb07aad2a278b54ab0c08 (diff) | |
download | xen-9346f6cfbfb992b4fb38b802b794f194f1209dbf.tar.gz xen-9346f6cfbfb992b4fb38b802b794f194f1209dbf.tar.bz2 xen-9346f6cfbfb992b4fb38b802b794f194f1209dbf.zip |
x86/hvm: No need to arch_set_info_guest() before restoring per-vcpu HVM state.
Signed-off-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'xen/common/domain.c')
-rw-r--r-- | xen/common/domain.c | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/xen/common/domain.c b/xen/common/domain.c index 2cc6ab150c..786ae741d9 100644 --- a/xen/common/domain.c +++ b/xen/common/domain.c @@ -778,18 +778,6 @@ void domain_unpause_by_systemcontroller(struct domain *d) domain_unpause(d); } -int boot_vcpu(struct domain *d, int vcpuid, vcpu_guest_context_u ctxt) -{ - struct vcpu *v = d->vcpu[vcpuid]; - int rc; - - domain_lock(d); - rc = v->is_initialised ? -EEXIST : arch_set_info_guest(v, ctxt); - domain_unlock(d); - - return rc; -} - void vcpu_reset(struct vcpu *v) { struct domain *d = v->domain; @@ -847,7 +835,9 @@ long do_vcpu_op(int cmd, int vcpuid, XEN_GUEST_HANDLE(void) arg) return -EFAULT; } - rc = boot_vcpu(d, vcpuid, ctxt); + domain_lock(d); + rc = v->is_initialised ? -EEXIST : arch_set_info_guest(v, ctxt); + domain_unlock(d); free_vcpu_guest_context(ctxt); break; |