[thiscpuops upgrade 06/10] vmstat: Use this_cpu_inc_return for vm statistics

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Christoph Lameter
Date: Tuesday, November 23, 2010 - 4:51 pm

this_cpu_inc_return() saves us a memory access there. Code
size does not change.

Signed-off-by: Christoph Lameter <cl@linux.com>

---
 mm/vmstat.c |    8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

Index: linux-2.6/mm/vmstat.c
===================================================================
--- linux-2.6.orig/mm/vmstat.c	2010-11-23 16:35:19.000000000 -0600
+++ linux-2.6/mm/vmstat.c	2010-11-23 16:45:24.000000000 -0600
@@ -227,9 +227,7 @@ void __inc_zone_state(struct zone *zone,
 	s8 * __percpu p = pcp->vm_stat_diff + item;
 	int v, t;
 
-	__this_cpu_inc(*p);
-
-	v = __this_cpu_read(*p);
+	v = __this_cpu_inc_return(*p);
 	t = __this_cpu_read(pcp->stat_threshold);
 	if (unlikely(v > t)) {
 		int overstep = t / 2;
@@ -251,9 +249,7 @@ void __dec_zone_state(struct zone *zone,
 	s8 * __percpu p = pcp->vm_stat_diff + item;
 	int v, t;
 
-	__this_cpu_dec(*p);
-
-	v = __this_cpu_read(*p);
+	v = __this_cpu_dec_return(*p);
 	t = __this_cpu_read(pcp->stat_threshold);
 	if (unlikely(v < - t)) {
 		int overstep = t / 2;

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[thiscpuops upgrade 00/10] Upgrade of this_cpu_ops, Christoph Lameter, (Tue Nov 23, 4:51 pm)
[thiscpuops upgrade 02/10] vmstat: Optimize zone counter m ..., Christoph Lameter, (Tue Nov 23, 4:51 pm)
[thiscpuops upgrade 03/10] percpu: Generic support for thi ..., Christoph Lameter, (Tue Nov 23, 4:51 pm)
[thiscpuops upgrade 04/10] x86: Support for this_cpu_add,s ..., Christoph Lameter, (Tue Nov 23, 4:51 pm)
[thiscpuops upgrade 05/10] x86: Use this_cpu_inc_return fo ..., Christoph Lameter, (Tue Nov 23, 4:51 pm)
[thiscpuops upgrade 06/10] vmstat: Use this_cpu_inc_return ..., Christoph Lameter, (Tue Nov 23, 4:51 pm)
[thiscpuops upgrade 07/10] highmem: Use this_cpu_xx_return ..., Christoph Lameter, (Tue Nov 23, 4:51 pm)
[thiscpuops upgrade 08/10] percpu: generic this_cpu_cmpxch ..., Christoph Lameter, (Tue Nov 23, 4:51 pm)
[thiscpuops upgrade 09/10] x86: this_cpu_cmpxchg and this_ ..., Christoph Lameter, (Tue Nov 23, 4:51 pm)
[thiscpuops upgrade 10/10] Lockless (and preemptless) fast ..., Christoph Lameter, (Tue Nov 23, 4:51 pm)
Re: [thiscpuops upgrade 09/10] x86: this_cpu_cmpxchg and t ..., Mathieu Desnoyers, (Tue Nov 23, 5:44 pm)
Re: [thiscpuops upgrade 10/10] Lockless (and preemptless) ..., Mathieu Desnoyers, (Tue Nov 23, 6:02 pm)
Re: [thiscpuops upgrade 10/10] Lockless (and preemptless) ..., Mathieu Desnoyers, (Tue Nov 23, 6:05 pm)
Re: [thiscpuops upgrade 10/10] Lockless (and preemptless) ..., Christoph Lameter, (Tue Nov 23, 8:09 pm)
Re: [thiscpuops upgrade 09/10] x86: this_cpu_cmpxchg and t ..., Christoph Lameter, (Tue Nov 23, 8:11 pm)
Re: [thiscpuops upgrade 10/10] Lockless (and preemptless) ..., Christoph Lameter, (Tue Nov 23, 8:13 pm)
Re: [thiscpuops upgrade 10/10] Lockless (and preemptless) ..., Christoph Lameter, (Tue Nov 23, 9:37 pm)
Re: [thiscpuops upgrade 10/10] Lockless (and preemptless) ..., Christoph Lameter, (Wed Nov 24, 9:14 am)
Re: [thiscpuops upgrade 10/10] Lockless (and preemptless) ..., Christoph Lameter, (Wed Nov 24, 9:17 am)
Re: [thiscpuops upgrade 10/10] Lockless (and preemptless) ..., Christoph Lameter, (Wed Nov 24, 9:45 am)
Re: [thiscpuops upgrade 10/10] Lockless (and preemptless) ..., Christoph Lameter, (Wed Nov 24, 9:55 am)
Re: [thiscpuops upgrade 10/10] Lockless (and preemptless) ..., Christoph Lameter, (Wed Nov 24, 11:08 am)
Re: [thiscpuops upgrade 10/10] Lockless (and preemptless) ..., Jeremy Fitzhardinge, (Wed Nov 24, 12:37 pm)
Re: [thiscpuops upgrade 10/10] Lockless (and preemptless) ..., Christoph Lameter, (Wed Nov 24, 12:53 pm)
Re: [thiscpuops upgrade 10/10] Lockless (and preemptless) ..., Mathieu Desnoyers, (Wed Nov 24, 12:56 pm)
Re: [thiscpuops upgrade 10/10] Lockless (and preemptless) ..., Jeremy Fitzhardinge, (Wed Nov 24, 1:01 pm)
Re: [thiscpuops upgrade 03/10] percpu: Generic support for ..., Christoph Lameter, (Fri Nov 26, 9:37 am)
Re: [thiscpuops upgrade 05/10] x86: Use this_cpu_inc_retur ..., Christoph Lameter, (Fri Nov 26, 10:02 am)