Page MenuHomeFreeBSD

buf_ring: Remove unneeded memory barriers
ClosedPublic

Authored by andrew on Aug 20 2024, 2:14 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Apr 19, 11:55 PM
Unknown Object (File)
Thu, Apr 17, 4:03 AM
Unknown Object (File)
Fri, Apr 4, 4:53 PM
Unknown Object (File)
Mar 1 2025, 3:31 AM
Unknown Object (File)
Feb 28 2025, 6:33 PM
Unknown Object (File)
Feb 27 2025, 7:21 PM
Unknown Object (File)
Feb 25 2025, 7:24 PM
Unknown Object (File)
Feb 14 2025, 7:27 PM
Subscribers
None

Details

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 Not Applicable
Unit
Tests Not Applicable

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
This revision was automatically updated to reflect the committed changes.