summaryrefslogtreecommitdiffstats
path: root/drivers/xen
diff options
context:
space:
mode:
authorIan Campbell <Ian.Campbell@citrix.com>2009-03-25 17:46:42 +0000
committerJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>2009-04-08 14:25:47 -0700
commit9a5a2cac9f99c98d9d15cec17b1904f29d0e8009 (patch)
tree91775ba00bad7a7ecf3e5a0f8e22a4d9e00c2021 /drivers/xen
parente3f8a74e3a884b91a4390c66ed8175ef74db7067 (diff)
downloadlinux-9a5a2cac9f99c98d9d15cec17b1904f29d0e8009.tar.gz
linux-9a5a2cac9f99c98d9d15cec17b1904f29d0e8009.tar.bz2
linux-9a5a2cac9f99c98d9d15cec17b1904f29d0e8009.zip
xen: resume interrupts before system devices.
Impact: bugfix Xen domain restore Otherwise the first timer interrupt after resume is missed and we never get another. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Diffstat (limited to 'drivers/xen')
-rw-r--r--drivers/xen/manage.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/xen/manage.c b/drivers/xen/manage.c
index 0d61db1e7b49..4b5b84837ee1 100644
--- a/drivers/xen/manage.c
+++ b/drivers/xen/manage.c
@@ -62,14 +62,15 @@ static int xen_suspend(void *data)
gnttab_resume();
xen_mm_unpin_all();
- sysdev_resume();
-
if (!*cancelled) {
xen_irq_resume();
xen_console_resume();
xen_timer_resume();
}
+ sysdev_resume();
+ device_power_up(PMSG_RESUME);
+
return 0;
}