[PATCH v2] panic: setup panic_timeout early

From: Felipe Contreras
Date: Mon Nov 11 2013 - 09:47:23 EST


Otherwise we might not reboot when the user needs it the most (early
on).

Signed-off-by: Felipe Contreras <felipe.contreras@xxxxxxxxx>
---

This time using kstrtol() instead of get_option().

Interdiff:

diff --git a/kernel/panic.c b/kernel/panic.c
index 46e37ff..d865263 100644
--- a/kernel/panic.c
+++ b/kernel/panic.c
@@ -470,12 +470,14 @@ EXPORT_SYMBOL(__stack_chk_fail);

core_param(pause_on_oops, pause_on_oops, int, 0644);

-static int __init set_panic_timeout(char *str)
+static int __init set_panic_timeout(char *val)
{
- int timeout;
+ long timeout;
+ int ret;

- if (!get_option(&str, &timeout))
- return -EINVAL;
+ ret = kstrtol(val, 0, &timeout);
+ if (ret < 0)
+ return ret;

panic_timeout = timeout;
return 0;

kernel/panic.c | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/kernel/panic.c b/kernel/panic.c
index b6c482c..d865263 100644
--- a/kernel/panic.c
+++ b/kernel/panic.c
@@ -468,9 +468,23 @@ EXPORT_SYMBOL(__stack_chk_fail);

#endif

-core_param(panic, panic_timeout, int, 0644);
core_param(pause_on_oops, pause_on_oops, int, 0644);

+static int __init set_panic_timeout(char *val)
+{
+ long timeout;
+ int ret;
+
+ ret = kstrtol(val, 0, &timeout);
+ if (ret < 0)
+ return ret;
+
+ panic_timeout = timeout;
+ return 0;
+}
+
+early_param("panic_timeout", set_panic_timeout);
+
static int __init oops_setup(char *s)
{
if (!s)
--
1.8.4.2+fc1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/