lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <36049726-3d4c-f930-2081-3c958ddbc8d9@infradead.org>
Date:   Wed, 24 Oct 2018 12:04:09 -0700
From:   Randy Dunlap <rdunlap@...radead.org>
To:     Laurence Oberman <loberman@...hat.com>,
        linux-kernel@...r.kernel.org
Cc:     tglx@...utronix.de
Subject: Re: [PATCH] V4 init/main.c Enable watchdog_thresh control from kernel
 line

On 10/24/18 11:06 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@...hat.com>
> ---
>  Documentation/admin-guide/kernel-parameters.txt | 7 +++++++
>  init/main.c                                     | 8 ++++++++
>  2 files changed, 15 insertions(+)
> 

Laurence,
Here are a few more changes for you to consider.


> diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
> index 4cdcd1a..05f76b8 100644
> --- a/Documentation/admin-guide/kernel-parameters.txt
> +++ b/Documentation/admin-guide/kernel-parameters.txt
> @@ -4932,6 +4932,13 @@
>  			or other driver-specific files in the
>  			Documentation/watchdog/ directory.
>  
> +	watchdog_thresh=
> +			This parameter allows early boot to change the
> +			value of the watchdog timeout threshold from the default
> +			of 10 seconds to avoid hard lockups.  Example:
> +			 watchdog_thresh=30

No extra char indent above.

> +			Default: 10
> +
>  	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..ae45291 100644
> --- a/init/main.c
> +++ b/init/main.c
> @@ -1038,6 +1038,14 @@ static int __init set_debug_rodata(char *str)
>  __setup("rodata=", set_debug_rodata);
>  #endif
>  

#ifdef CONFIG_LOCKUP_DETECTOR

extern int watchdog_thresh;

> +static int __init is_watchdog_thresh_setup(char *str)
> +{
> +	get_option(&str, &watchdog_thresh);
> +	return 1;
> +}
> +__setup("watchdog_thresh=", is_watchdog_thresh_setup);
> +
#endif

and I would change the function name above to just watchdog_thresh_setup()
or setup_watchdog_thresh().


> +
>  #ifdef CONFIG_STRICT_KERNEL_RWX
>  static void mark_readonly(void)
>  {
> 


-- 
~Randy

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ