summaryrefslogtreecommitdiffstats
path: root/drivers/xen/manage.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-07-17 08:02:35 -1000
committerLinus Torvalds <torvalds@linux-foundation.org>2014-07-17 08:02:35 -1000
commit59ca9ee42838d0f597137cf811e47eaf42fdcb69 (patch)
tree314be354db51ccd602b8459a39f5eeec76b52cdb /drivers/xen/manage.c
parent22d368544b0ed9093a3db3ee4e00a842540fcecd (diff)
parentfb9a0c443691ceaab3daba966bbbd9f5ff3aa26f (diff)
Merge tag 'stable/for-linus-3.16-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip
Pull Xen fixes from Konrad Rzeszutek Wilk: "Two fixes found during migration of PV guests. David would be the one doing this pull but he is on vacation. Fixes: - fix console deadlock when resuming PV guests - fix regression hit when ballooning and resuming PV guests" * tag 'stable/for-linus-3.16-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip: xen/balloon: set ballooned out pages as invalid in p2m xen/manage: fix potential deadlock when resuming the console
Diffstat (limited to 'drivers/xen/manage.c')
-rw-r--r--drivers/xen/manage.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/xen/manage.c b/drivers/xen/manage.c
index c3667b202f2..5f1e1f3cd18 100644
--- a/drivers/xen/manage.c
+++ b/drivers/xen/manage.c
@@ -88,7 +88,6 @@ static int xen_suspend(void *data)
if (!si->cancelled) {
xen_irq_resume();
- xen_console_resume();
xen_timer_resume();
}
@@ -135,6 +134,10 @@ static void do_suspend(void)
err = stop_machine(xen_suspend, &si, cpumask_of(0));
+ /* Resume console as early as possible. */
+ if (!si.cancelled)
+ xen_console_resume();
+
raw_notifier_call_chain(&xen_resume_notifier, 0, NULL);
dpm_resume_start(si.cancelled ? PMSG_THAW : PMSG_RESTORE);