[PATCH v2 5/6] kernel/reboot: remove generic restart mode

From: Benjamin Bara
Date: Wed Aug 09 2023 - 15:25:58 EST


From: Benjamin Bara <benjamin.bara@xxxxxxxxxxx>

Remove the "unspecified" restart mode, as it is not in use anymore. New
handler registrations should use the specified "cold" or "warm" instead.
These respect the "reboot_mode" kernel parameter and enable implicit
priorization (cold before warm) when the reboot_mode is unspecified.

Signed-off-by: Benjamin Bara <benjamin.bara@xxxxxxxxxxx>
---
v2:
- improve commit message
---
include/linux/reboot.h | 11 -----------
kernel/reboot.c | 26 --------------------------
2 files changed, 37 deletions(-)

diff --git a/include/linux/reboot.h b/include/linux/reboot.h
index 05199aedb696..ad1a7b4026c0 100644
--- a/include/linux/reboot.h
+++ b/include/linux/reboot.h
@@ -113,13 +113,6 @@ enum sys_off_mode {
*/
SYS_OFF_MODE_RESTART_PREPARE,

- /**
- * @SYS_OFF_MODE_RESTART:
- *
- * Handlers restart system. Handlers are disallowed to sleep.
- */
- SYS_OFF_MODE_RESTART,
-
/**
* @SYS_OFF_MODE_RESTART_COLD:
*
@@ -167,10 +160,6 @@ int devm_register_power_off_handler(struct device *dev,
int (*callback)(struct sys_off_data *data),
void *cb_data);

-int devm_register_restart_handler(struct device *dev,
- int (*callback)(struct sys_off_data *data),
- void *cb_data);
-
int devm_register_cold_restart_handler(struct device *dev,
int (*callback)(struct sys_off_data *data),
void *cb_data);
diff --git a/kernel/reboot.c b/kernel/reboot.c
index ab99f450801f..af0e090dd087 100644
--- a/kernel/reboot.c
+++ b/kernel/reboot.c
@@ -443,10 +443,6 @@ register_sys_off_handler(enum sys_off_mode mode,
handler->blocking = true;
break;

- case SYS_OFF_MODE_RESTART:
- handler->list = &warm_restart_handler_list;
- break;
-
case SYS_OFF_MODE_RESTART_COLD:
handler->list = &cold_restart_handler_list;
break;
@@ -576,28 +572,6 @@ int devm_register_power_off_handler(struct device *dev,
}
EXPORT_SYMBOL_GPL(devm_register_power_off_handler);

-/**
- * devm_register_restart_handler - Register restart handler
- * @dev: Device that registers callback
- * @callback: Callback function
- * @cb_data: Callback's argument
- *
- * Registers resource-managed sys-off handler with a default priority
- * and using restart mode.
- *
- * Returns zero on success, or error code on failure.
- */
-int devm_register_restart_handler(struct device *dev,
- int (*callback)(struct sys_off_data *data),
- void *cb_data)
-{
- return devm_register_sys_off_handler(dev,
- SYS_OFF_MODE_RESTART,
- SYS_OFF_PRIO_DEFAULT,
- callback, cb_data);
-}
-EXPORT_SYMBOL_GPL(devm_register_restart_handler);
-
/**
* devm_register_cold_restart_handler - Register cold restart handler
* @dev: Device that registers callback

--
2.34.1