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: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20211206185823.GC641268@paulmck-ThinkPad-P17-Gen-1>
Date:   Mon, 6 Dec 2021 10:58:23 -0800
From:   "Paul E. McKenney" <paulmck@...nel.org>
To:     Waiman Long <longman@...hat.com>
Cc:     John Stultz <john.stultz@...aro.org>,
        Thomas Gleixner <tglx@...utronix.de>,
        Stephen Boyd <sboyd@...nel.org>,
        Feng Tang <feng.tang@...el.com>, linux-kernel@...r.kernel.org
Subject: Re: [PATCH-rcu] clocksource: Add a Kconfig option for
 WATCHDOG_MAX_SKEW

On Sun, Dec 05, 2021 at 10:38:15PM -0500, Waiman Long wrote:
> A watchdog maximum skew of 100us may still be too small for
> some systems or archs. It may also be too small when some kernel
> debug config options are enabled.  So add a new Kconfig option
> CLOCKSOURCE_WATCHDOG_MAX_SKEW_US to allow kernel builders to have more
> control on the threshold for marking clocksource as unstable.
> 
> Signed-off-by: Waiman Long <longman@...hat.com>

Queued, thank you!

							Thanx, Paul

> ---
>  kernel/time/Kconfig       | 9 +++++++++
>  kernel/time/clocksource.c | 8 +++++++-
>  2 files changed, 16 insertions(+), 1 deletion(-)
> 
> diff --git a/kernel/time/Kconfig b/kernel/time/Kconfig
> index 04bfd62f5e5c..27b7868b5c30 100644
> --- a/kernel/time/Kconfig
> +++ b/kernel/time/Kconfig
> @@ -181,5 +181,14 @@ config HIGH_RES_TIMERS
>  	  hardware is not capable then this option only increases
>  	  the size of the kernel image.
>  
> +config CLOCKSOURCE_WATCHDOG_MAX_SKEW_US
> +	int "Clocksource watchdog maximum allowable skew (in μs)"
> +	depends on CLOCKSOURCE_WATCHDOG
> +	range 50 1000
> +	default 100
> +	help
> +	  Specify the maximum amount of allowable watchdog skew in
> +	  microseconds before reporting the clocksource to be unstable.
> +
>  endmenu
>  endif
> diff --git a/kernel/time/clocksource.c b/kernel/time/clocksource.c
> index b7e52a642948..877a78bea9b0 100644
> --- a/kernel/time/clocksource.c
> +++ b/kernel/time/clocksource.c
> @@ -107,7 +107,13 @@ static u64 suspend_start;
>   * This delay could be due to SMIs, NMIs, or to VCPU preemptions.  Used as
>   * a lower bound for cs->uncertainty_margin values when registering clocks.
>   */
> -#define WATCHDOG_MAX_SKEW (100 * NSEC_PER_USEC)
> +#ifdef CONFIG_CLOCKSOURCE_WATCHDOG_MAX_SKEW_US
> +#define MAX_SKEW_USEC	CONFIG_CLOCKSOURCE_WATCHDOG_MAX_SKEW_US
> +#else
> +#define MAX_SKEW_USEC	100
> +#endif
> +
> +#define WATCHDOG_MAX_SKEW (MAX_SKEW_USEC * NSEC_PER_USEC)
>  
>  #ifdef CONFIG_CLOCKSOURCE_WATCHDOG
>  static void clocksource_watchdog_work(struct work_struct *work);
> -- 
> 2.27.0
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ