The branch main has been updated by andrew:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=37bb465d27eefd2237e6e3af9592457fccf324e2

commit 37bb465d27eefd2237e6e3af9592457fccf324e2
Author:     Andrew Turner <[email protected]>
AuthorDate: 2024-12-11 15:15:25 +0000
Commit:     Andrew Turner <[email protected]>
CommitDate: 2024-12-11 17:02:24 +0000

    buf_ring: Remove an unneeded barrier
    
    This was left over from before using atomic(9) consistently. It is
    unneeded as these loads are already ordered correctly.
    
    Reviewed by:    alc, kib
    Sponsored by:   Arm Ltd
    Differential Revision:  https://reviews.freebsd.org/D48002
---
 sys/sys/buf_ring.h | 1 -
 1 file changed, 1 deletion(-)

diff --git a/sys/sys/buf_ring.h b/sys/sys/buf_ring.h
index ab7e683ed0e9..00870cbf3531 100644
--- a/sys/sys/buf_ring.h
+++ b/sys/sys/buf_ring.h
@@ -107,7 +107,6 @@ buf_ring_enqueue(struct buf_ring *br, void *buf)
                cons_tail = atomic_load_acq_32(&br->br_cons_tail);
 
                if ((int32_t)(cons_tail + br->br_prod_size - prod_next) < 1) {
-                       rmb();
                        if (prod_head == atomic_load_32(&br->br_prod_head) &&
                            cons_tail == atomic_load_32(&br->br_cons_tail)) {
                                br->br_drops++;

Reply via email to