x86/xen: fix upper bound of pmd loop in xen_cleanhighmap()
[firefly-linux-kernel-4.4.55.git] / arch / x86 / xen / suspend.c
index 3705eabd7e22ee68d22c1b66d4cb1661bb108f41..7f664c416faf55672f604c5b688f6b6ef32102a8 100644 (file)
@@ -1,6 +1,7 @@
 #include <linux/types.h>
 #include <linux/tick.h>
 
+#include <xen/xen.h>
 #include <xen/interface/xen.h>
 #include <xen/grant_table.h>
 #include <xen/events.h>
@@ -33,7 +34,8 @@ static void xen_hvm_post_suspend(int suspend_cancelled)
 {
 #ifdef CONFIG_XEN_PVHVM
        int cpu;
-       xen_hvm_init_shared_info();
+       if (!suspend_cancelled)
+           xen_hvm_init_shared_info();
        xen_callback_vector();
        xen_unplug_emulated_devices();
        if (xen_feature(XENFEAT_hvm_safe_pvclock)) {