diff --git a/man2/membarrier.2 b/man2/membarrier.2 index 179b63414..9b9882047 100644 --- a/man2/membarrier.2 +++ b/man2/membarrier.2 @@ -88,24 +88,24 @@ order between entry to and return from the system call. All threads on the system are targeted by this command. .TP -.B MEMBARRIER_CMD_PRIVATE_EXPEDITED +.BR MEMBARRIER_CMD_PRIVATE_EXPEDITED " (since Linux 4.14)" Execute a memory barrier on each running thread belonging to the same process as the current thread. -Upon return from system call, the caller -thread is ensured that all its running threads siblings have passed +Upon return from system call, the calling +thread is assured that all its running threads siblings have passed through a state where all memory accesses to user-space addresses match program order between entry to and return from the system call (non-running threads are de facto in such a state). -This only covers threads from the same process as the caller thread. -The "expedited" commands complete faster than the non-expedited ones, +This covers only threads from the same process as the calling thread. +.IP +The "expedited" commands complete faster than the non-expedited ones; they never block, but have the downside of causing extra overhead. A process needs to register its intent to use the private expedited command prior to using it. .TP -.B MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED -Register the process intent to use +.BR MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED " (since Linux 4.14)" +Register the process's intent to use .BR MEMBARRIER_CMD_PRIVATE_EXPEDITED . -.TP .PP The .I flags