diff options
author | Tim Deegan <Tim.Deegan@xensource.com> | 2007-01-18 16:48:09 +0000 |
---|---|---|
committer | Tim Deegan <Tim.Deegan@xensource.com> | 2007-01-18 16:48:09 +0000 |
commit | 42b9c7a19f579747a696a493199445a95dda60ac (patch) | |
tree | f1c70f87cda0a10c41e22b75b526fa0982bbb9c6 /xen/common | |
parent | a5af2a08af96a99b2ccc75bc45c21dbf1955645f (diff) | |
download | xen-42b9c7a19f579747a696a493199445a95dda60ac.tar.gz xen-42b9c7a19f579747a696a493199445a95dda60ac.tar.bz2 xen-42b9c7a19f579747a696a493199445a95dda60ac.zip |
[HVM] save restore: shadow fix
Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
fix 2 shadow issues:
* restored guest's mem type_info are not correct
* remove annoying warnings when restore
enable smp:
turn on the vcpu when set_vcpu_context in restore as cpu hotplug is not feasible for HVM
Diffstat (limited to 'xen/common')
-rw-r--r-- | xen/common/domain.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/xen/common/domain.c b/xen/common/domain.c index 28530c40d5..de7892d6b5 100644 --- a/xen/common/domain.c +++ b/xen/common/domain.c @@ -24,6 +24,7 @@ #include <xen/percpu.h> #include <xen/multicall.h> #include <asm/debugger.h> +#include <asm/hvm/support.h> #include <public/sched.h> #include <public/vcpu.h> #ifdef CONFIG_COMPAT @@ -505,6 +506,14 @@ int set_info_guest(struct domain *d, if ( rc == 0 ) rc = arch_set_info_guest(v, c); + /*XXX: hvm smp guest restore support */ + if ( rc == 0 && + v->vcpu_id != 0 && + is_hvm_vcpu(v) && + test_and_clear_bit(_VCPUF_down, &v->vcpu_flags) ) { + vcpu_wake(v); + } + domain_unpause(d); xfree(c.nat); |