locking/atomic, crypto/nx: Prepare for atomic64_read() conversion

The return type of atomic64_read() varies by architecture. It may return
long (e.g. powerpc), long long (e.g. arm), or s64 (e.g. x86_64). This is
somewhat painful, and mandates the use of explicit casts in some cases
(e.g. when printing the return value).

To ameliorate matters, subsequent patches will make the atomic64 API
consistently use s64.

As a preparatory step, this patch updates the nx-842 code to treat the
return value of atomic64_read() as s64, using explicit casts. These
casts will be removed once the s64 conversion is complete.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Herbert Xu <herbert@gondor.apana.org.au>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Will Deacon <will.deacon@arm.com>
Cc: aou@eecs.berkeley.edu
Cc: arnd@arndb.de
Cc: bp@alien8.de
Cc: catalin.marinas@arm.com
Cc: davem@davemloft.net
Cc: fenghua.yu@intel.com
Cc: heiko.carstens@de.ibm.com
Cc: ink@jurassic.park.msu.ru
Cc: jhogan@kernel.org
Cc: linux@armlinux.org.uk
Cc: mattst88@gmail.com
Cc: mpe@ellerman.id.au
Cc: palmer@sifive.com
Cc: paul.burton@mips.com
Cc: paulus@samba.org
Cc: ralf@linux-mips.org
Cc: rth@twiddle.net
Cc: tony.luck@intel.com
Cc: vgupta@synopsys.com
Link: https://lkml.kernel.org/r/20190522132250.26499-2-mark.rutland@arm.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
Mark Rutland 2019-05-22 14:22:33 +01:00 committed by Ingo Molnar
parent 24811637db
commit 90fde663ae
1 changed files with 6 additions and 6 deletions

View File

@ -856,8 +856,8 @@ static ssize_t nx842_##_name##_show(struct device *dev, \
rcu_read_lock(); \ rcu_read_lock(); \
local_devdata = rcu_dereference(devdata); \ local_devdata = rcu_dereference(devdata); \
if (local_devdata) \ if (local_devdata) \
p = snprintf(buf, PAGE_SIZE, "%ld\n", \ p = snprintf(buf, PAGE_SIZE, "%lld\n", \
atomic64_read(&local_devdata->counters->_name)); \ (s64)atomic64_read(&local_devdata->counters->_name)); \
rcu_read_unlock(); \ rcu_read_unlock(); \
return p; \ return p; \
} }
@ -909,17 +909,17 @@ static ssize_t nx842_timehist_show(struct device *dev,
} }
for (i = 0; i < (NX842_HIST_SLOTS - 2); i++) { for (i = 0; i < (NX842_HIST_SLOTS - 2); i++) {
bytes = snprintf(p, bytes_remain, "%u-%uus:\t%ld\n", bytes = snprintf(p, bytes_remain, "%u-%uus:\t%lld\n",
i ? (2<<(i-1)) : 0, (2<<i)-1, i ? (2<<(i-1)) : 0, (2<<i)-1,
atomic64_read(&times[i])); (s64)atomic64_read(&times[i]));
bytes_remain -= bytes; bytes_remain -= bytes;
p += bytes; p += bytes;
} }
/* The last bucket holds everything over /* The last bucket holds everything over
* 2<<(NX842_HIST_SLOTS - 2) us */ * 2<<(NX842_HIST_SLOTS - 2) us */
bytes = snprintf(p, bytes_remain, "%uus - :\t%ld\n", bytes = snprintf(p, bytes_remain, "%uus - :\t%lld\n",
2<<(NX842_HIST_SLOTS - 2), 2<<(NX842_HIST_SLOTS - 2),
atomic64_read(&times[(NX842_HIST_SLOTS - 1)])); (s64)atomic64_read(&times[(NX842_HIST_SLOTS - 1)]));
p += bytes; p += bytes;
rcu_read_unlock(); rcu_read_unlock();