lkml.org 
[lkml]   [2009]   [Feb]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [patch] remove put_cpu_no_resched()
From
Date
On Wed, 2009-02-04 at 00:27 +0000, Thomas Gleixner wrote:
> plain text document attachment (remove-put-cpu-no-resched.patch)
> Impact: remove a high latency source
>
> put_cpu_no_resched() is an optimization of put_cpu() which
> unfortunately can cause high latencies.
>
> The nfs iostats code uses put_cpu_no_resched() in a code sequence
> where a reschedule request caused by an interrupt between the
> get_cpu() and the put_cpu_no_resched() can delay the reschedule for at
> least HZ.
>
> The other users of put_cpu_no_resched() optimize correctly in
> interrupt code, but there is no real harm in using the put_cpu()
> function which is an alias for preempt_enable(). The extra check of the
> preemmpt count is not as critical as the potential source of missing a
> reschedule.
>
> Debugged in the preempt-rt tree and verified in mainline.
>
> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
> Reviewed-by: Ingo Molnar <mingo@elte.hu>
> Cc: Tony Luck <tony.luck@intel.com>
> Cc: Trond Myklebust <Trond.Myklebust@netapp.com>

Acked-by: Trond Myklebust <Trond.Myklebust@netapp.com>
--
Trond Myklebust
Linux NFS client maintainer

NetApp
Trond.Myklebust@netapp.com
www.netapp.com


\
 
 \ /
  Last update: 2009-02-04 01:37    [W:0.034 / U:0.596 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site