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
next prev parent reply other threads:[~2014-01-17 15:22 UTC|newest]
Thread overview: 45+ 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 ` [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 ` [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 ` [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 ` [PATCH 33/41] powerpc: " Christoph Lameter
2014-01-17 15:18 ` [PATCH 34/41] sparc: " 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 ` [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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome