lkml.org 
[lkml]   [2010]   [Nov]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [thiscpuops upgrade 05/10] x86: Use this_cpu_inc_return for nmi counter
On 11/24/2010 12:51 AM, Christoph Lameter wrote:
> this_cpu_inc_return() saves us a memory access there.
>
> Signed-off-by: Christoph Lameter <cl@linux.com>
>
> ---
> arch/x86/kernel/apic/nmi.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> Index: linux-2.6/arch/x86/kernel/apic/nmi.c
> ===================================================================
> --- linux-2.6.orig/arch/x86/kernel/apic/nmi.c 2010-11-23 16:35:19.000000000 -0600
> +++ linux-2.6/arch/x86/kernel/apic/nmi.c 2010-11-23 16:38:29.000000000 -0600
> @@ -432,8 +432,7 @@ nmi_watchdog_tick(struct pt_regs *regs,
> * Ayiee, looks like this CPU is stuck ...
> * wait a few IRQs (5 seconds) before doing the oops ...
> */
> - __this_cpu_inc(alert_counter);
> - if (__this_cpu_read(alert_counter) == 5 * nmi_hz)
> + if (__this_cpu_inc_return(alert_counter) == 5 * nmi_hz)

Hmmm... one worry I have is that xadd, being not a very popular
operation, might be slower than add and read. Using it for atomicity
would probably be beneficial in most cases but have you checked this
actually is cheaper?

Thanks.

--
tejun


\
 
 \ /
  Last update: 2010-11-26 17:39    [W:0.198 / U:0.424 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site