diff options
author | Thomas Gschwantner <tharre3@gmail.com> | 2018-06-17 23:19:42 +0200 |
---|---|---|
committer | Thomas Gschwantner <tharre3@gmail.com> | 2018-06-17 23:19:42 +0200 |
commit | 5e6ee47d445126aaed49d310ef19fe2ceb9413b9 (patch) | |
tree | 24c903013389669a37c1f50a2547a7e70a38e8e2 | |
parent | selftest/mpmc_ring: use rwsem instead of multiple completions (diff) | |
download | wireguard-monolithic-historical-5e6ee47d445126aaed49d310ef19fe2ceb9413b9.tar.xz wireguard-monolithic-historical-5e6ee47d445126aaed49d310ef19fe2ceb9413b9.zip |
mpmc_ptr_ring: move atomic_read outside loop
-rw-r--r-- | src/mpmc_ptr_ring.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mpmc_ptr_ring.h b/src/mpmc_ptr_ring.h index d8310e7..6010436 100644 --- a/src/mpmc_ptr_ring.h +++ b/src/mpmc_ptr_ring.h @@ -133,9 +133,9 @@ static inline void *mpmc_ptr_ring_consume(struct mpmc_ptr_ring *r) unsigned int mask = r->mask; void *element; - for (;;) { - c = atomic_read(&r->consumer_head); + c = atomic_read(&r->consumer_head); + for (;;) { /* Fetch consumer_head first. */ smp_rmb(); |