From 65f63384b391bf4d384327d8a7c6de9860290b5c Mon Sep 17 00:00:00 2001 From: Ian Campbell Date: Tue, 1 Dec 2009 11:47:14 +0000 Subject: [PATCH] xen: improve error handling in do_suspend. The existing error handling has a few issues: - If freeze_processes() fails it exits with shutting_down = SHUTDOWN_SUSPEND. - If dpm_suspend_noirq() fails it exits without resuming xenbus. - If stop_machine() fails it exits without resuming xenbus or calling dpm_resume_end(). - xs_suspend()/xs_resume() and dpm_suspend_noirq()/dpm_resume_noirq() were not nested in the obvious way. Fix by ensuring each failure case goto's the correct label. Treat a failure of stop_machine() as a cancelled suspend in order to follow the correct resume path. Signed-off-by: Ian Campbell Signed-off-by: Jeremy Fitzhardinge Cc: Stable Kernel --- Reading git-format-patch failed