[RFC PATCH 02/12] xen/manage: introduce helper function to know the on-going suspend mode

From: Anchal Agarwal
Date: Tue Jun 12 2018 - 16:59:40 EST


From: Munehisa Kamata <kamatam@xxxxxxxxxx>

Introduce simple functions which help to know the on-going suspend mode
so that other Xen-related code can behave differently according to the
current suspend mode.

Signed-off-by: Munehisa Kamata <kamatam@xxxxxxxxxx>
Signed-off-by: Anchal Agarwal <anchalag@xxxxxxxxxx>
Reviewed-by: Alakesh Haloi <alakeshh@xxxxxxxxxx>
Reviewed-by: Sebastian Biemueller <sbiemue@xxxxxxxxxx>
Reviewed-by: Munehisa Kamata <kamatam@xxxxxxxxxx>
Reviewed-by: Eduardo Valentin <eduval@xxxxxxxxxx>
---
drivers/xen/manage.c | 15 +++++++++++++++
include/xen/xen-ops.h | 4 ++++
2 files changed, 19 insertions(+)

diff --git a/drivers/xen/manage.c b/drivers/xen/manage.c
index 8f9ea87..326631d 100644
--- a/drivers/xen/manage.c
+++ b/drivers/xen/manage.c
@@ -50,6 +50,21 @@ enum suspend_modes {
/* Protected by pm_mutex */
static enum suspend_modes suspend_mode = NO_SUSPEND;

+bool xen_suspend_mode_is_xen_suspend(void)
+{
+ return suspend_mode == XEN_SUSPEND;
+}
+
+bool xen_suspend_mode_is_pm_suspend(void)
+{
+ return suspend_mode == PM_SUSPEND;
+}
+
+bool xen_suspend_mode_is_pm_hibernation(void)
+{
+ return suspend_mode == PM_HIBERNATION;
+}
+
struct suspend_info {
int cancelled;
};
diff --git a/include/xen/xen-ops.h b/include/xen/xen-ops.h
index fd23e42..be78f6f 100644
--- a/include/xen/xen-ops.h
+++ b/include/xen/xen-ops.h
@@ -39,6 +39,10 @@ u64 xen_steal_clock(int cpu);

int xen_setup_shutdown_event(void);

+bool xen_suspend_mode_is_xen_suspend(void);
+bool xen_suspend_mode_is_pm_suspend(void);
+bool xen_suspend_mode_is_pm_hibernation(void);
+
extern unsigned long *xen_contiguous_bitmap;

#ifdef CONFIG_XEN_PV
--
2.7.4