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]
Date:	Tue, 10 Feb 2015 14:19:15 +0800
From:	Chai Wen <chaiw.fnst@...fujitsu.com>
To:	Cyril Bur <cyrilbur@...il.com>
CC:	<linux-kernel@...r.kernel.org>, <mpe@...erman.id.au>,
	<drjones@...hat.com>, <dzickus@...hat.com>,
	<akpm@...ux-foundation.org>, <mingo@...nel.org>,
	<uobergfe@...hat.com>, <fabf@...net.be>, <atomlin@...hat.com>,
	<benzh@...omium.org>, <schwidefsky@...ibm.com>
Subject: Re: [PATCH v2 1/2] Add another clock for use with the soft lockup
 watchdog.

On 01/09/2015 11:34 AM, Cyril Bur wrote:

> This permits the use of arch specific clocks for which virtualised kernels can
> use their notion of 'running' time, not the elpased wall time which will


s/elpased/elapsed/


thanks
chai wen

> include host execution time.
> 
> Signed-off-by: Cyril Bur <cyrilbur@...il.com>
> ---
> V2:
>    Remove the export of running_clock
>    Use local_clock instead of sched_clock as was initally used in the
> softlockup detector
> 
> ---
>  include/linux/sched.h |  1 +
>  kernel/sched/clock.c  | 13 +++++++++++++
>  kernel/watchdog.c     |  2 +-
>  3 files changed, 15 insertions(+), 1 deletion(-)
> 
> diff --git a/include/linux/sched.h b/include/linux/sched.h
> index 8db31ef..e400162 100644
> --- a/include/linux/sched.h
> +++ b/include/linux/sched.h
> @@ -2145,6 +2145,7 @@ extern unsigned long long notrace sched_clock(void);
>   */
>  extern u64 cpu_clock(int cpu);
>  extern u64 local_clock(void);
> +extern u64 running_clock(void);
>  extern u64 sched_clock_cpu(int cpu);
>  
>  
> diff --git a/kernel/sched/clock.c b/kernel/sched/clock.c
> index c27e4f8..c0a2051 100644
> --- a/kernel/sched/clock.c
> +++ b/kernel/sched/clock.c
> @@ -420,3 +420,16 @@ u64 local_clock(void)
>  
>  EXPORT_SYMBOL_GPL(cpu_clock);
>  EXPORT_SYMBOL_GPL(local_clock);
> +
> +/*
> + * Running clock - returns the time that has elapsed while a guest has been
> + * running.
> + * On a guest this value should be local_clock minus the time the guest was
> + * suspended by the hypervisor (for any reason).
> + * On bare metal this function should return the same as local_clock.
> + * Architectures and sub-architectures can override this.
> + */
> +u64 __weak running_clock(void)
> +{
> +	return local_clock();
> +}
> diff --git a/kernel/watchdog.c b/kernel/watchdog.c
> index 70bf118..3174bf8 100644
> --- a/kernel/watchdog.c
> +++ b/kernel/watchdog.c
> @@ -154,7 +154,7 @@ static int get_softlockup_thresh(void)
>   */
>  static unsigned long get_timestamp(void)
>  {
> -	return local_clock() >> 30LL;  /* 2^30 ~= 10^9 */
> +	return running_clock() >> 30LL;  /* 2^30 ~= 10^9 */
>  }
>  
>  static void set_sample_period(void)




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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ