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)
Tue, Dec 31, 12:17 PM
Unknown Object (File)
Dec 9 2024, 3:53 PM
Unknown Object (File)
Nov 3 2024, 6:34 AM
Unknown Object (File)
Oct 16 2024, 9:51 AM
Unknown Object (File)
Sep 27 2024, 6:31 AM
Unknown Object (File)
Sep 12 2024, 1:21 PM
Unknown Object (File)
Sep 11 2024, 3:41 PM
Unknown Object (File)
Sep 8 2024, 6:52 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.