[PATCH 02/12] net/neighbour: Employ atomic_fetch_inc()

From: Davidlohr Bueso
Date: Mon Jun 20 2016 - 16:08:07 EST


Now that we have fetch_inc() we can stop using inc_return() - 1.

These are very similar to the existing OP-RETURN primitives we already
have, except they return the value of the atomic variable _before_
modification.

Cc: David S. Miller <davem@xxxxxxxxxxxxx>
Signed-off-by: Davidlohr Bueso <dbueso@xxxxxxx>
---
net/core/neighbour.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/core/neighbour.c b/net/core/neighbour.c
index 29dd8cc22bbf..60e981a8735e 100644
--- a/net/core/neighbour.c
+++ b/net/core/neighbour.c
@@ -269,7 +269,7 @@ static struct neighbour *neigh_alloc(struct neigh_table *tbl, struct net_device
unsigned long now = jiffies;
int entries;

- entries = atomic_inc_return(&tbl->entries) - 1;
+ entries = atomic_fetch_inc(&tbl->entries);
if (entries >= tbl->gc_thresh3 ||
(entries >= tbl->gc_thresh2 &&
time_after(now, tbl->last_flush + 5 * HZ))) {
--
2.6.6