[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20090503083027.GB27707@elte.hu>
Date: Sun, 3 May 2009 10:30:27 +0200
From: Ingo Molnar <mingo@...e.hu>
To: Thomas Gleixner <tglx@...utronix.de>
Cc: LKML <linux-kernel@...r.kernel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Tony Luck <tony.luck@...el.com>,
Trond Myklebust <Trond.Myklebust@...app.com>
Subject: Re: [patch] remove put_cpu_no_resched() [ Resend ]
* Thomas Gleixner <tglx@...utronix.de> wrote:
> 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@...utronix.de>
> Cc: Ingo Molnar <mingo@...e.hu>
> Cc: Tony Luck <tony.luck@...el.com>
> Cc: Trond Myklebust <Trond.Myklebust@...app.com>
> ---
> arch/ia64/kernel/perfmon.c | 2 +-
> fs/nfs/iostat.h | 4 ++--
> include/linux/smp.h | 1 -
> 3 files changed, 3 insertions(+), 4 deletions(-)
Good catch!
Acked-by: Ingo Molnar <mingo@...e.hu>
Ingo
--
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