All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Lameter <cl@linux.com>
To: Tejun Heo <tj@kernel.org>
Cc: akpm@linuxfoundation.org, rostedt@goodmis.org,
	linux-kernel@vger.kernel.org, Ingo Molnar <mingo@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	David Daney <david.daney@cavium.com>
Subject: [PATCH 29/41] MIPS: Replace __get_cpu_var uses in FPU emulator.
Date: Fri, 17 Jan 2014 09:18:41 -0600	[thread overview]
Message-ID: <20140117151837.396513827@linux.com> (raw)
In-Reply-To: 20140117151812.770437629@linux.com

[-- Attachment #1: 0001-MIPS-Replace-__get_cpu_var-uses-in-FPU-emulator.patch --]
[-- Type: text/plain, Size: 2055 bytes --]


From: David Daney <david.daney@cavium.com>

The use of __this_cpu_inc() requires a fundamental integer type, so
change the type of all the counters to unsigned long, which is the
same width they were before, but not wrapped in local_t.

Signed-off-by: David Daney <david.daney@cavium.com>
Signed-off-by: Christoph Lameter <cl@linux.com>
---
 arch/mips/include/asm/fpu_emulator.h | 14 +++++++-------
 arch/mips/math-emu/cp1emu.c          |  6 +++---
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/arch/mips/include/asm/fpu_emulator.h b/arch/mips/include/asm/fpu_emulator.h
index 2abb587..619fa5f 100644
--- a/arch/mips/include/asm/fpu_emulator.h
+++ b/arch/mips/include/asm/fpu_emulator.h
@@ -30,12 +30,12 @@
 #ifdef CONFIG_DEBUG_FS
 
 struct mips_fpu_emulator_stats {
-	local_t emulated;
-	local_t loads;
-	local_t stores;
-	local_t cp1ops;
-	local_t cp1xops;
-	local_t errors;
+	unsigned long emulated;
+	unsigned long loads;
+	unsigned long stores;
+	unsigned long cp1ops;
+	unsigned long cp1xops;
+	unsigned long errors;
 };
 
 DECLARE_PER_CPU(struct mips_fpu_emulator_stats, fpuemustats);
@@ -43,7 +43,7 @@ DECLARE_PER_CPU(struct mips_fpu_emulator_stats, fpuemustats);
 #define MIPS_FPU_EMU_INC_STATS(M)					\
 do {									\
 	preempt_disable();						\
-	__local_inc(&__get_cpu_var(fpuemustats).M);			\
+	__this_cpu_inc(fpuemustats.M);					\
 	preempt_enable();						\
 } while (0)
 
diff --git a/arch/mips/math-emu/cp1emu.c b/arch/mips/math-emu/cp1emu.c
index efe0088..b853d05 100644
--- a/arch/mips/math-emu/cp1emu.c
+++ b/arch/mips/math-emu/cp1emu.c
@@ -2110,13 +2110,13 @@ int fpu_emulator_cop1Handler(struct pt_regs *xcp, struct mips_fpu_struct *ctx,
 static int fpuemu_stat_get(void *data, u64 *val)
 {
 	int cpu;
-	unsigned long sum = 0;
+	u64 sum = 0;
 	for_each_online_cpu(cpu) {
 		struct mips_fpu_emulator_stats *ps;
-		local_t *pv;
+		unsigned long *pv;
 		ps = &per_cpu(fpuemustats, cpu);
 		pv = (void *)ps + (unsigned long)data;
-		sum += local_read(pv);
+		sum += *pv;
 	}
 	*val = sum;
 	return 0;
-- 
1.7.11.7



  parent reply	other threads:[~2014-01-17 15:22 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-17 15:18 [PATCH 00/41] percpu: Consistent per cpu operations V3 Christoph Lameter
2014-01-17 15:18 ` [PATCH 01/41] mm: Replace __get_cpu_var uses with this_cpu_ptr Christoph Lameter
2014-01-17 15:18   ` Christoph Lameter
2014-01-17 15:18 ` [PATCH 02/41] tracing: " Christoph Lameter
2014-01-17 15:18 ` [PATCH 03/41] percpu: Replace __get_cpu_var " Christoph Lameter
2014-01-17 15:18 ` [PATCH 04/41] kernel misc: Replace __get_cpu_var uses Christoph Lameter
2014-01-17 15:18 ` [PATCH 05/41] drivers/char/random: " Christoph Lameter
2014-01-17 15:18 ` [PATCH 06/41] drivers/cpuidle: Replace __get_cpu_var uses for address calculation Christoph Lameter
2014-01-17 15:18 ` [PATCH 07/41] drivers/oprofile: " Christoph Lameter
2014-01-17 15:18 ` [PATCH 08/41] drivers/leds: Replace __get_cpu_var use through this_cpu_ptr Christoph Lameter
2014-01-17 15:18 ` [PATCH 09/41] drivers/clocksource: Replace __get_cpu_var used for address calculation Christoph Lameter
2014-01-17 15:18 ` [PATCH 10/41] staging/zsmalloc: Replace instances of using __get_cpu_var " Christoph Lameter
2014-01-17 15:18 ` [PATCH 11/41] parisc: Replace __get_cpu_var uses " Christoph Lameter
2014-01-17 15:18   ` Christoph Lameter
2014-01-17 15:18 ` [PATCH 12/41] metag: " Christoph Lameter
2014-01-17 15:18 ` [PATCH 13/41] drivers/net/ethernet/tile: " Christoph Lameter
2014-01-17 15:18 ` [PATCH 14/41] percpu: Add raw_cpu_ops Christoph Lameter
2014-01-17 15:18 ` [PATCH 15/41] mm: Use raw_cpu ops for determining current NUMA node Christoph Lameter
2014-01-17 15:18   ` Christoph Lameter
2014-01-17 15:18 ` [PATCH 16/41] modules: Use raw_cpu_write for initialization of per cpu refcount Christoph Lameter
2014-01-17 15:18 ` [PATCH 17/41] net: Replace __this_cpu_inc in route.c with raw_cpu_inc Christoph Lameter
2014-01-18  3:05   ` David Miller
2014-01-17 15:18 ` [PATCH 18/41] percpu: Add preemption checks to __this_cpu ops Christoph Lameter
2014-01-17 15:18 ` [PATCH 19/41] time: Replace __get_cpu_var uses Christoph Lameter
2014-01-17 15:18 ` [PATCH 20/41] scheduler: Replace __get_cpu_var with this_cpu_ptr Christoph Lameter
2014-01-17 15:18 ` [PATCH 21/41] block: Replace __this_cpu_ptr with raw_cpu_ptr Christoph Lameter
2014-01-17 15:18 ` [PATCH 22/41] rcu: Replace __this_cpu_ptr uses " Christoph Lameter
2014-01-17 15:18 ` [PATCH 23/41] watchdog: Replace __raw_get_cpu_var uses Christoph Lameter
2014-01-17 15:18 ` [PATCH 24/41] net: Replace get_cpu_var through this_cpu_ptr Christoph Lameter
2014-01-18  3:05   ` David Miller
2014-01-17 15:18 ` [PATCH 25/41] md: Replace __this_cpu_ptr with raw_cpu_ptr Christoph Lameter
2014-01-17 15:18 ` [PATCH 26/41] irqchips: Replace __this_cpu_ptr uses Christoph Lameter
2014-01-17 15:18 ` [PATCH 27/41] x86: Replace __get_cpu_var uses Christoph Lameter
2014-01-17 16:29   ` H. Peter Anvin
2014-01-17 15:18 ` [PATCH 28/41] arm: Replace __this_cpu_ptr with raw_cpu_ptr Christoph Lameter
2014-01-17 15:18 ` Christoph Lameter [this message]
2014-01-17 15:18 ` [PATCH 30/41] mips: Replace __get_cpu_var uses Christoph Lameter
2014-01-17 15:18 ` [PATCH 31/41] s390: rename __this_cpu_ptr to raw_cpu_ptr Christoph Lameter
2014-01-17 15:18 ` [PATCH 32/41] ia64: Replace __get_cpu_var uses Christoph Lameter
2014-01-17 15:18   ` Christoph Lameter
2014-01-17 15:18 ` [PATCH 33/41] powerpc: " Christoph Lameter
2014-01-17 15:18 ` [PATCH 34/41] sparc: " Christoph Lameter
2014-01-17 15:18   ` Christoph Lameter
2014-01-17 15:18 ` [PATCH 35/41] tile: " Christoph Lameter
2014-01-17 15:18 ` [PATCH 36/41] blackfin: " Christoph Lameter
2014-01-17 15:18 ` [PATCH 37/41] avr32: Replace __get_cpu_var with __this_cpu_write Christoph Lameter
2014-01-17 15:18 ` [PATCH 38/41] alpha: Replace __get_cpu_var Christoph Lameter
2014-01-17 15:18 ` [PATCH 39/41] sh: Replace __get_cpu_var uses Christoph Lameter
2014-01-17 15:18   ` Christoph Lameter
2014-01-17 15:18 ` [PATCH 40/41] Remove __get_cpu_var and __raw_get_cpu_var macros [only in 3.15] Christoph Lameter
2014-01-17 15:18 ` [PATCH 41/41] percpu: Remove __this_cpu_ptr Christoph Lameter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140117151837.396513827@linux.com \
    --to=cl@linux.com \
    --cc=akpm@linuxfoundation.org \
    --cc=david.daney@cavium.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=rostedt@goodmis.org \
    --cc=tglx@linutronix.de \
    --cc=tj@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.