In current linux.git, gnttab_suspend() and gnttab_resume() are defined
and declared unconditionally. However, their only in-tree callers reside
in drivers/xen/manage.c, which are guarded by CONFIG_HIBERNATE_CALLBACKS.

Match the helper scope to their callers by wrapping the definitions in
CONFIG_HIBERNATE_CALLBACKS and providing no-op stubs in the header. This
fixes the config-scope mismatch and reduces the code footprint when
hibernation callbacks are disabled.

Signed-off-by: Pengpeng Hou <[email protected]>
---
Hi Juergen,

Thank you for the feedback. I apologize for the non-standard patch format 
in the previous version. 

As requested, I have regenerated this patch using `git format-patch` to 
ensure proper hunk headers and context line numbers are included.

Changes in v2:
- Re-generated with proper git formatting (line numbers and context).
- No functional changes from v1.

 drivers/xen/grant-table.c |  3 ++-
 include/xen/grant_table.h | 12 ++++++++++++
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/drivers/xen/grant-table.c b/drivers/xen/grant-table.c
index 97e27f754d396..a6abf1ccd54ce 100644
--- a/drivers/xen/grant-table.c
+++ b/drivers/xen/grant-table.c
@@ -1579,7 +1579,7 @@ static int gnttab_setup(void)
        }
        return gnttab_map(0, nr_grant_frames - 1);
 }
-
+#ifdef CONFIG_HIBERNATE_CALLBACKS
 int gnttab_resume(void)
 {
        gnttab_request_version();
@@ -1592,6 +1592,7 @@ int gnttab_suspend(void)
                gnttab_interface->unmap_frames();
        return 0;
 }
+#endif
 
 static int gnttab_expand(unsigned int req_entries)
 {
diff --git a/include/xen/grant_table.h b/include/xen/grant_table.h
index 69ac6d80a006b..a33a60a2ea72d 100644
--- a/include/xen/grant_table.h
+++ b/include/xen/grant_table.h
@@ -84,8 +84,20 @@ struct gntab_unmap_queue_data
 };
 
 int gnttab_init(void);
+#ifdef CONFIG_HIBERNATE_CALLBACKS
 int gnttab_suspend(void);
 int gnttab_resume(void);
+#else
+static inline int gnttab_suspend(void)
+{
+       return 0;
+}
+
+static inline int gnttab_resume(void)
+{
+       return 0;
+}
+#endif
 
 int gnttab_grant_foreign_access(domid_t domid, unsigned long frame,
                                int readonly);
-- 
2.25.1


Reply via email to