Wentao Liang
02794e35ab
PM: hibernate: Add error handling for syscore_suspend()
...
[ Upstream commit e20a70c572539a486dbd91b225fa6a194a5e2122 ]
In hibernation_platform_enter(), the code did not check the
return value of syscore_suspend(), potentially leading to a
situation where syscore_resume() would be called even if
syscore_suspend() failed. This could cause unpredictable
behavior or system instability.
Modify the code sequence in question to properly handle errors returned
by syscore_suspend(). If an error occurs in the suspend path, the code
now jumps to label 'Enable_irqs' skipping the syscore_resume() call and
only enabling interrupts after setting the system state to SYSTEM_RUNNING.
Fixes: 40dc166cb5 ("PM / Core: Introduce struct syscore_ops for core subsystems PM")
Signed-off-by: Wentao Liang <vulab@iscas.ac.cn >
Link: https://patch.msgid.link/20250119143205.2103-1-vulab@iscas.ac.cn
[ rjw: Changelog edits ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com >
Signed-off-by: Sasha Levin <sashal@kernel.org >
2025-02-08 09:52:29 +01:00
..
2025-02-08 09:52:06 +01:00
2024-12-09 10:31:54 +01:00
2023-09-05 11:01:47 -07:00
2024-08-03 08:54:34 +02:00
2024-12-14 20:00:06 +01:00
2024-04-03 15:28:50 +02:00
2025-02-08 09:51:44 +01:00
2023-11-20 11:58:53 +01:00
2024-06-27 13:49:13 +02:00
2025-02-08 09:51:48 +01:00
2024-12-14 19:59:59 +01:00
2023-11-20 11:59:25 +01:00
2024-10-04 16:30:02 +02:00
2024-10-04 16:30:03 +02:00
2025-02-08 09:52:29 +01:00
2024-04-13 13:07:29 +02:00
2024-12-09 10:31:50 +01:00
2025-02-08 09:51:53 +01:00
2025-01-23 17:21:17 +01:00
2025-02-08 09:52:08 +01:00
2023-08-30 08:17:35 -07:00
2024-01-31 16:18:49 -08:00
2022-08-22 18:50:06 -04:00
2022-04-25 14:37:28 +02:00
2023-11-28 17:19:56 +00:00
2024-02-05 20:14:14 +00:00
2023-07-21 12:17:25 -04:00
2024-07-11 12:49:18 +02:00
2023-10-13 18:34:46 +02:00
2024-05-02 16:32:50 +02:00
2023-08-08 16:48:47 -04:00
2022-09-26 10:13:13 -07:00
2023-03-14 19:32:38 -07:00
2023-06-05 09:57:20 +02:00
2023-01-13 11:48:15 +01:00
2025-01-23 17:21:17 +01:00
2024-05-02 16:32:47 +02:00
2023-12-20 17:01:51 +01:00
2023-04-18 16:39:34 -07:00
2024-07-11 12:49:15 +02:00
2022-07-05 13:32:59 -07:00
2023-02-08 13:36:22 +01:00
2024-11-14 13:19:37 +01:00
2022-09-07 21:53:50 +02:00
2025-01-23 17:21:13 +01:00
2022-07-15 18:21:49 +00:00
2023-04-08 13:45:37 -07:00
2023-08-21 13:37:28 -07:00
2023-03-24 11:01:29 +01:00
2024-10-10 11:57:13 +02:00
2022-11-12 18:47:36 -08:00
2023-08-29 17:32:32 -07:00
2022-11-15 00:42:02 -08:00
2023-08-25 15:00:36 -07:00
2024-01-05 15:19:41 +01:00
2022-03-31 10:36:55 +02:00
2025-01-09 13:32:07 +01:00
2024-01-31 16:18:56 -08:00
2024-09-12 11:11:27 +02:00
2022-09-11 21:55:06 -07:00
2023-11-28 17:19:40 +00:00
2023-03-24 20:10:59 -07:00
2024-08-14 13:58:51 +02:00
2023-06-08 12:27:20 -07:00
2023-08-24 16:25:14 -07:00
2024-10-17 15:24:37 +02:00
2022-09-11 21:55:12 -07:00
2024-06-12 11:11:50 +02:00
2023-04-08 13:45:38 -07:00
2023-08-21 11:29:12 -07:00
2024-06-12 11:11:50 +02:00
2025-02-08 09:52:09 +01:00
2024-04-13 13:07:29 +02:00
2023-07-10 12:47:01 -07:00
2024-06-21 14:38:50 +02:00
2023-08-21 13:37:59 -07:00
2023-09-19 13:21:33 -07:00
2024-08-14 13:58:47 +02:00
2023-04-16 14:23:07 +02:00
2023-11-28 17:20:04 +00:00
2023-08-18 10:18:55 -07:00
2024-10-10 11:57:50 +02:00
2022-12-27 12:52:12 +01:00
2023-07-14 15:02:57 -07:00
2022-11-09 18:06:35 +00:00
2023-08-17 12:32:15 -07:00
2024-12-09 10:33:11 +01:00
2024-09-12 11:11:37 +02:00
2024-06-12 11:12:52 +02:00
2025-01-09 13:31:48 +01:00
2023-04-20 11:36:35 +02:00
2022-02-25 09:36:06 +01:00
2024-12-19 18:11:36 +01:00
2022-04-05 09:59:38 +02:00
2022-05-24 11:11:13 -07:00
2024-07-05 09:34:04 +02:00
2024-04-03 15:28:54 +02:00
2022-09-08 16:56:45 -07:00
2023-06-28 16:05:21 -07:00
2024-11-01 01:58:34 +01:00
2022-08-29 12:47:15 +01:00
2023-11-28 17:20:08 +00:00
2023-02-18 14:34:36 -05:00
2022-04-29 14:38:03 -07:00
2024-11-14 13:19:40 +01:00
2023-06-29 15:19:43 -07:00
2023-02-02 22:50:04 -08:00
2022-11-30 20:16:49 -04:00
2022-05-19 23:25:47 -04:00
2023-04-13 11:49:35 -07:00
2024-07-11 12:49:10 +02:00
2023-11-28 17:19:40 +00:00
2023-06-19 16:25:28 -07:00
2024-08-03 08:54:29 +02:00
2023-11-28 17:19:57 +00:00
2023-08-07 15:57:22 -10:00
2025-01-17 13:36:25 +01:00