summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/linux/percpu_counter.h6
-rw-r--r--lib/percpu_counter.c4
2 files changed, 5 insertions, 5 deletions
diff --git a/include/linux/percpu_counter.h b/include/linux/percpu_counter.h
index 40df86f7a3b..e8fa2da13ba 100644
--- a/include/linux/percpu_counter.h
+++ b/include/linux/percpu_counter.h
@@ -32,10 +32,10 @@ struct percpu_counter {
void percpu_counter_init(struct percpu_counter *fbc, s64 amount);
void percpu_counter_destroy(struct percpu_counter *fbc);
-void __percpu_counter_add(struct percpu_counter *fbc, s32 amount, s32 batch);
+void __percpu_counter_add(struct percpu_counter *fbc, s64 amount, s32 batch);
s64 percpu_counter_sum(struct percpu_counter *fbc);
-static inline void percpu_counter_add(struct percpu_counter *fbc, s32 amount)
+static inline void percpu_counter_add(struct percpu_counter *fbc, s64 amount)
{
__percpu_counter_add(fbc, amount, FBC_BATCH);
}
@@ -79,7 +79,7 @@ static inline void percpu_counter_destroy(struct percpu_counter *fbc)
percpu_counter_add(fbc, amount)
static inline void
-percpu_counter_add(struct percpu_counter *fbc, s32 amount)
+percpu_counter_add(struct percpu_counter *fbc, s64 amount)
{
preempt_disable();
fbc->count += amount;
diff --git a/lib/percpu_counter.c b/lib/percpu_counter.c
index f736d67c64d..f7ac68c4c37 100644
--- a/lib/percpu_counter.c
+++ b/lib/percpu_counter.c
@@ -14,9 +14,9 @@ static LIST_HEAD(percpu_counters);
static DEFINE_MUTEX(percpu_counters_lock);
#endif
-void __percpu_counter_add(struct percpu_counter *fbc, s32 amount, s32 batch)
+void __percpu_counter_add(struct percpu_counter *fbc, s64 amount, s32 batch)
{
- long count;
+ s64 count;
s32 *pcount;
int cpu = get_cpu();