lkml.org 
[lkml]   [2021]   [Jun]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 2/6] posix-cpu-timers: Don't start process wide cputime counter if timer is disabled
On Fri, Jun 04, 2021 at 01:31:55PM +0200, Frederic Weisbecker wrote:
> If timer_settime() is called with a 0 expiration on a timer that is
> already disabled, the process wide cputime counter will be started
> and won't ever get a chance to be stopped by stop_process_timer() since
> no timer is actually armed to be processed.
>
> This process wide counter might bring some performance hit due to the
> concurrent atomic additions at the thread group scope.
>
> The following snippet is enough to trigger the issue.
>
> void trigger_process_counter(void)
> {
> timer_t id;
> struct itimerspec val = { };
>
> timer_create(CLOCK_PROCESS_CPUTIME_ID, NULL, &id);
> timer_settime(id, TIMER_ABSTIME, &val, NULL);
> timer_delete(id);
> }
>
> So make sure we don't needlessly start it.
>
> Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
> Cc: Oleg Nesterov <oleg@redhat.com>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Peter Zijlstra (Intel) <peterz@infradead.org>
> Cc: Ingo Molnar <mingo@kernel.org>
> Cc: Eric W. Biederman <ebiederm@xmission.com>

No Fixes tag for this one. It has been there since year 1 AG.

I suspect it's the same for most other commits in the series, checking...

\
 
 \ /
  Last update: 2021-06-09 14:19    [W:1.329 / U:0.236 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site