Messages in this thread | | | Subject | Re: [PATCH] V3 init/main.c Enable watchdog_thresh control from kernel line | From | Randy Dunlap <> | Date | Wed, 24 Oct 2018 10:43:22 -0700 |
| |
On 10/24/18 9:53 AM, Laurence Oberman wrote: > Both graphics and serial consoles are exposed to hard lockups > when handling a large amount of messaging. The kernel watchdog_thresh > parameter up to now has not been available to be set on the kernel line for > early boot. > This patch allows the setting of watchdog_thresh to be increased > when needed to avoid the hard lockups in the console code. > > Signed-off-by: Laurence Oberman <loberman@redhat.com> > --- > Documentation/admin-guide/kernel-parameters.txt | 8 ++++++++ > init/main.c | 9 +++++++++ > 2 files changed, 17 insertions(+) > > diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt > index 4cdcd1a..cd8d588 100644 > --- a/Documentation/admin-guide/kernel-parameters.txt > +++ b/Documentation/admin-guide/kernel-parameters.txt > @@ -4932,6 +4932,14 @@ > or other driver-specific files in the > Documentation/watchdog/ directory. > > + watchdog_thresh= > + This parameter is now available as a kernel line > + parameter. Use watchdog_thresh=30 as example > + This will allow early boot changes of the current > + default of 10s to be increased when needed to > + avoid hard lockups. > + Default: 10 > +
The first sentence isn't needed. and s/10s/10 seconds/ How about this?
This parameter allows early boot to change the default value of the watchdog timeout threshold from the default of 10 seconds to avoid hard lockups. Example: watchdog_thresh=30
> workqueue.watchdog_thresh= > If CONFIG_WQ_WATCHDOG is configured, workqueue can > warn stall conditions and dump internal state to > diff --git a/init/main.c b/init/main.c > index 1c3f902..88cbed9 100644 > --- a/init/main.c > +++ b/init/main.c > @@ -1038,6 +1038,15 @@ static int __init set_debug_rodata(char *str) > __setup("rodata=", set_debug_rodata); > #endif > > +static int __init > +is_watchdog_thresh_setup(char *str)
No need to split that into 2 lines; just join them, please.
> +{ > + get_option(&str, &watchdog_thresh); > + return 1; > +} > +__setup("watchdog_thresh=", is_watchdog_thresh_setup); > + > + > #ifdef CONFIG_STRICT_KERNEL_RWX > static void mark_readonly(void) > { >
-- ~Randy
| |