Page MenuHomeFreeBSD

buf_ring: Remove unneeded memory barriers
AcceptedPublic

Authored by andrew on Aug 20 2024, 2:14 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Sep 27, 6:31 AM
Unknown Object (File)
Thu, Sep 12, 1:21 PM
Unknown Object (File)
Wed, Sep 11, 3:41 PM
Unknown Object (File)
Sep 8 2024, 6:52 PM
Unknown Object (File)
Sep 7 2024, 4:46 AM
Unknown Object (File)
Sep 5 2024, 9:11 PM
Unknown Object (File)
Sep 5 2024, 3:57 AM
Unknown Object (File)
Sep 5 2024, 3:56 AM
Subscribers
None

Details

Reviewers
markj
kib
alc
imp
Summary

We no longer need a memory barrier on the compare and set operations.
If these fail then there are appropriate barriers on the loads earlier
in the loop, and if they succeed then no other threads can be accessing
the br_ring entry so any store to it is safe.

Sponsored by: Arm Ltd

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 59107
Build 55994: arc lint + arc unit

Event Timeline

andrew created this revision.
sys/sys/buf_ring.h
110

What is the purpose of this rmb?

This revision is now accepted and ready to land.Aug 20 2024, 6:02 PM