percpu_counter: change return value and add comments
The percpu_counter_*_positive() API in UP case doesn't check if return value is positive. Add comments to explain why we don't. Also if count < 0, returns 0 instead of 1 for *read_positive(). [akpm@linux-foundation.org: tweak comment] Signed-off-by: Shaohua Li <shaohua.li@intel.com> Acked-by: Eric Dumazet <eric.dumazet@gmail.com> Cc: Tejun Heo <tj@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
3c8f370ded
commit
c84598bbfa
@@ -75,7 +75,7 @@ static inline s64 percpu_counter_read_positive(struct percpu_counter *fbc)
|
|||||||
barrier(); /* Prevent reloads of fbc->count */
|
barrier(); /* Prevent reloads of fbc->count */
|
||||||
if (ret >= 0)
|
if (ret >= 0)
|
||||||
return ret;
|
return ret;
|
||||||
return 1;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline int percpu_counter_initialized(struct percpu_counter *fbc)
|
static inline int percpu_counter_initialized(struct percpu_counter *fbc)
|
||||||
@@ -133,6 +133,10 @@ static inline s64 percpu_counter_read(struct percpu_counter *fbc)
|
|||||||
return fbc->count;
|
return fbc->count;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* percpu_counter is intended to track positive numbers. In the UP case the
|
||||||
|
* number should never be negative.
|
||||||
|
*/
|
||||||
static inline s64 percpu_counter_read_positive(struct percpu_counter *fbc)
|
static inline s64 percpu_counter_read_positive(struct percpu_counter *fbc)
|
||||||
{
|
{
|
||||||
return fbc->count;
|
return fbc->count;
|
||||||
|
Reference in New Issue
Block a user