Bugzilla will be upgraded to version 5.0. The upgrade date is tentatively scheduled for 2 December 2018, pending final testing and feedback.
Bug 1429640 - [rt] ipc/msg: Implement lockless pipelined wakeups
[rt] ipc/msg: Implement lockless pipelined wakeups
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: kernel-rt (Show other bugs)
7.4
x86_64 Linux
medium Severity medium
: rc
: ---
Assigned To: Clark Williams
Jiri Kastner
:
Depends On:
Blocks: 1353018 1410158
  Show dependency treegraph
 
Reported: 2017-03-06 13:10 EST by Clark Williams
Modified: 2017-08-01 20:25 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2017-08-01 15:02:59 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
ipc/msg: Implement lockless pipelined wakeups (6.00 KB, patch)
2017-03-06 13:12 EST, Clark Williams
no flags Details | Diff
ipc/msg: Implement lockless pipelined wakeups (v4) (7.19 KB, patch)
2017-04-11 16:53 EDT, Luis Claudio R. Goncalves
no flags Details | Diff


External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2017:2077 normal SHIPPED_LIVE Important: kernel-rt security, bug fix, and enhancement update 2017-08-01 14:13:37 EDT

  None (edit)
Description Clark Williams 2017-03-06 13:10:19 EST
Move the wakeup_process() invocation so it is not done under
the perm->lock by making use of a lockless wake_q. With this change, the
waiter is woken up once the message has been assigned and it does not
need to loop on SMP if the message points to NULL. In the signal case we
still need to check the pointer under the lock to verify the state.

This change should also avoid the introduction of preempt_disable() in
-RT which avoids a busy-loop which pools for the NULL -> !NULL
change if the waiter has a higher priority compared to the waker.
Comment 2 Clark Williams 2017-03-06 13:12 EST
Created attachment 1260532 [details]
ipc/msg: Implement lockless pipelined wakeups

Ported to -586 build of RHEL-RT
Comment 3 Clark Williams 2017-03-07 09:46:33 EST
tested with scratch build: 

https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=12694532
Comment 6 Luis Claudio R. Goncalves 2017-04-11 16:53 EDT
Created attachment 1270949 [details]
ipc/msg: Implement lockless pipelined wakeups (v4)
Comment 10 errata-xmlrpc 2017-08-01 15:02:59 EDT
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2017:2077
Comment 11 errata-xmlrpc 2017-08-01 20:25:36 EDT
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2017:2077

Note You need to log in before you can comment on or make changes to this bug.