* [PATCH v2] PM: hibernate: Add stub for pm_hibernate_is_recovering()
@ 2025-07-12 23:37 Mario Limonciello
2025-07-13 6:49 ` Randy Dunlap
2025-07-13 11:29 ` Rafael J. Wysocki
0 siblings, 2 replies; 3+ messages in thread
From: Mario Limonciello @ 2025-07-12 23:37 UTC (permalink / raw)
To: mario.limonciello, rafael, pavel, len.brown, guoqing.zhang
Cc: Randy Dunlap, linux-pm
From: Mario Limonciello <mario.limonciello@amd.com>
Randy reports that amdgpu fails to compile with the following error:
ERROR: modpost: "pm_hibernate_is_recovering" [drivers/gpu/drm/amd/amdgpu/amdgpu.ko] undefined!
This happens because pm_hibernate_is_recovering() is only compiled when
CONFIG_PM_SLEEP is set. Add a stub for it so that drivers don't need
to depend upon CONFIG_PM.
Cc: Samuel Zhang <guoqing.zhang@amd.com>
Reported-by: Randy Dunlap <rdunlap@infradead.org>
Closes: https://lore.kernel.org/dri-devel/CAJZ5v0h1CX+aTu7dFy6vB-9LM6t5J4rt7Su3qVnq1xx-BFAm=Q@mail.gmail.com/T/#m2b9fe212b35fde11d58fcbc4e0727bc02ebba7b0
Fixes: c2aaddbd2dede ("PM: hibernate: add new api pm_hibernate_is_recovering()")
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
--
v2:
* put stub in right ifdef
---
include/linux/suspend.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/linux/suspend.h b/include/linux/suspend.h
index 293137210fdf4..fcb150ee83b6b 100644
--- a/include/linux/suspend.h
+++ b/include/linux/suspend.h
@@ -426,8 +426,6 @@ int is_hibernate_resume_dev(dev_t dev);
static inline int is_hibernate_resume_dev(dev_t dev) { return 0; }
#endif
-bool pm_hibernate_is_recovering(void);
-
/* Hibernation and suspend events */
#define PM_HIBERNATION_PREPARE 0x0001 /* Going to hibernate */
#define PM_POST_HIBERNATION 0x0002 /* Hibernation finished */
@@ -478,6 +476,7 @@ extern unsigned int lock_system_sleep(void);
extern void unlock_system_sleep(unsigned int);
extern bool pm_sleep_transition_in_progress(void);
+bool pm_hibernate_is_recovering(void);
#else /* !CONFIG_PM_SLEEP */
@@ -508,6 +507,7 @@ static inline unsigned int lock_system_sleep(void) { return 0; }
static inline void unlock_system_sleep(unsigned int flags) {}
static inline bool pm_sleep_transition_in_progress(void) { return false; }
+static inline bool pm_hibernate_is_recovering(void) { return false; }
#endif /* !CONFIG_PM_SLEEP */
--
2.43.0
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH v2] PM: hibernate: Add stub for pm_hibernate_is_recovering()
2025-07-12 23:37 [PATCH v2] PM: hibernate: Add stub for pm_hibernate_is_recovering() Mario Limonciello
@ 2025-07-13 6:49 ` Randy Dunlap
2025-07-13 11:29 ` Rafael J. Wysocki
1 sibling, 0 replies; 3+ messages in thread
From: Randy Dunlap @ 2025-07-13 6:49 UTC (permalink / raw)
To: Mario Limonciello, mario.limonciello, rafael, pavel, len.brown,
guoqing.zhang
Cc: linux-pm
On 7/12/25 4:37 PM, Mario Limonciello wrote:
> From: Mario Limonciello <mario.limonciello@amd.com>
>
> Randy reports that amdgpu fails to compile with the following error:
> ERROR: modpost: "pm_hibernate_is_recovering" [drivers/gpu/drm/amd/amdgpu/amdgpu.ko] undefined!
>
> This happens because pm_hibernate_is_recovering() is only compiled when
> CONFIG_PM_SLEEP is set. Add a stub for it so that drivers don't need
> to depend upon CONFIG_PM.
>
> Cc: Samuel Zhang <guoqing.zhang@amd.com>
> Reported-by: Randy Dunlap <rdunlap@infradead.org>
> Closes: https://lore.kernel.org/dri-devel/CAJZ5v0h1CX+aTu7dFy6vB-9LM6t5J4rt7Su3qVnq1xx-BFAm=Q@mail.gmail.com/T/#m2b9fe212b35fde11d58fcbc4e0727bc02ebba7b0
> Fixes: c2aaddbd2dede ("PM: hibernate: add new api pm_hibernate_is_recovering()")
> Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Reviewed-by: Randy Dunlap <rdunlap@infradead.org>
Tested-by: Randy Dunlap <rdunlap@infradead.org>
Thanks.
> --
> v2:
> * put stub in right ifdef
> ---
> include/linux/suspend.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/include/linux/suspend.h b/include/linux/suspend.h
> index 293137210fdf4..fcb150ee83b6b 100644
> --- a/include/linux/suspend.h
> +++ b/include/linux/suspend.h
> @@ -426,8 +426,6 @@ int is_hibernate_resume_dev(dev_t dev);
> static inline int is_hibernate_resume_dev(dev_t dev) { return 0; }
> #endif
>
> -bool pm_hibernate_is_recovering(void);
> -
> /* Hibernation and suspend events */
> #define PM_HIBERNATION_PREPARE 0x0001 /* Going to hibernate */
> #define PM_POST_HIBERNATION 0x0002 /* Hibernation finished */
> @@ -478,6 +476,7 @@ extern unsigned int lock_system_sleep(void);
> extern void unlock_system_sleep(unsigned int);
>
> extern bool pm_sleep_transition_in_progress(void);
> +bool pm_hibernate_is_recovering(void);
>
> #else /* !CONFIG_PM_SLEEP */
>
> @@ -508,6 +507,7 @@ static inline unsigned int lock_system_sleep(void) { return 0; }
> static inline void unlock_system_sleep(unsigned int flags) {}
>
> static inline bool pm_sleep_transition_in_progress(void) { return false; }
> +static inline bool pm_hibernate_is_recovering(void) { return false; }
>
> #endif /* !CONFIG_PM_SLEEP */
>
--
~Randy
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH v2] PM: hibernate: Add stub for pm_hibernate_is_recovering()
2025-07-12 23:37 [PATCH v2] PM: hibernate: Add stub for pm_hibernate_is_recovering() Mario Limonciello
2025-07-13 6:49 ` Randy Dunlap
@ 2025-07-13 11:29 ` Rafael J. Wysocki
1 sibling, 0 replies; 3+ messages in thread
From: Rafael J. Wysocki @ 2025-07-13 11:29 UTC (permalink / raw)
To: Mario Limonciello
Cc: mario.limonciello, rafael, pavel, len.brown, guoqing.zhang,
Randy Dunlap, linux-pm
On Sun, Jul 13, 2025 at 1:37 AM Mario Limonciello <superm1@kernel.org> wrote:
>
> From: Mario Limonciello <mario.limonciello@amd.com>
>
> Randy reports that amdgpu fails to compile with the following error:
> ERROR: modpost: "pm_hibernate_is_recovering" [drivers/gpu/drm/amd/amdgpu/amdgpu.ko] undefined!
>
> This happens because pm_hibernate_is_recovering() is only compiled when
> CONFIG_PM_SLEEP is set. Add a stub for it so that drivers don't need
> to depend upon CONFIG_PM.
>
> Cc: Samuel Zhang <guoqing.zhang@amd.com>
> Reported-by: Randy Dunlap <rdunlap@infradead.org>
> Closes: https://lore.kernel.org/dri-devel/CAJZ5v0h1CX+aTu7dFy6vB-9LM6t5J4rt7Su3qVnq1xx-BFAm=Q@mail.gmail.com/T/#m2b9fe212b35fde11d58fcbc4e0727bc02ebba7b0
> Fixes: c2aaddbd2dede ("PM: hibernate: add new api pm_hibernate_is_recovering()")
> Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Acked-by: Rafael J. Wysocki <rafael@kernel.org>
> --
> v2:
> * put stub in right ifdef
> ---
> include/linux/suspend.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/include/linux/suspend.h b/include/linux/suspend.h
> index 293137210fdf4..fcb150ee83b6b 100644
> --- a/include/linux/suspend.h
> +++ b/include/linux/suspend.h
> @@ -426,8 +426,6 @@ int is_hibernate_resume_dev(dev_t dev);
> static inline int is_hibernate_resume_dev(dev_t dev) { return 0; }
> #endif
>
> -bool pm_hibernate_is_recovering(void);
> -
> /* Hibernation and suspend events */
> #define PM_HIBERNATION_PREPARE 0x0001 /* Going to hibernate */
> #define PM_POST_HIBERNATION 0x0002 /* Hibernation finished */
> @@ -478,6 +476,7 @@ extern unsigned int lock_system_sleep(void);
> extern void unlock_system_sleep(unsigned int);
>
> extern bool pm_sleep_transition_in_progress(void);
> +bool pm_hibernate_is_recovering(void);
>
> #else /* !CONFIG_PM_SLEEP */
>
> @@ -508,6 +507,7 @@ static inline unsigned int lock_system_sleep(void) { return 0; }
> static inline void unlock_system_sleep(unsigned int flags) {}
>
> static inline bool pm_sleep_transition_in_progress(void) { return false; }
> +static inline bool pm_hibernate_is_recovering(void) { return false; }
>
> #endif /* !CONFIG_PM_SLEEP */
>
> --
> 2.43.0
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-07-13 11:29 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-12 23:37 [PATCH v2] PM: hibernate: Add stub for pm_hibernate_is_recovering() Mario Limonciello
2025-07-13 6:49 ` Randy Dunlap
2025-07-13 11:29 ` Rafael J. Wysocki
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox