[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH] watchdog/xen: don't unconditionally enable the watchdog during resume



This was found to be a problem particularly after guest migration.

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Reported-by: Wouter de Geus <benv-xensource.com@xxxxxxxxxxxxx>
Reported-by: Ian Campbell <Ian.Campbell@xxxxxxxxxx>
Tested-by: Wouter de Geus <benv-xensource.com@xxxxxxxxxxxxx>

---
 drivers/watchdog/xen_wdt.c |    9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

--- 3.3/drivers/watchdog/xen_wdt.c
+++ 3.3-xen-watchdog-resume/drivers/watchdog/xen_wdt.c
@@ -299,11 +299,18 @@ static void xen_wdt_shutdown(struct plat
 
 static int xen_wdt_suspend(struct platform_device *dev, pm_message_t state)
 {
-       return xen_wdt_stop();
+       typeof(wdt.id) id = wdt.id;
+       int rc = xen_wdt_stop();
+
+       wdt.id = id;
+       return rc;
 }
 
 static int xen_wdt_resume(struct platform_device *dev)
 {
+       if (!wdt.id)
+               return 0;
+       wdt.id = 0;
        return xen_wdt_start();
 }
 




_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.