Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mgr: locking fixes #17309

Merged
merged 3 commits into from
Sep 22, 2017
Merged

mgr: locking fixes #17309

merged 3 commits into from
Sep 22, 2017

Commits on Sep 18, 2017

  1. mgr: clean up DaemonStateIndex locking

    Various things here were dangerously operating
    outside locks.
    
    Additionally switch to a RWLock because this lock
    will be relatively read-hot when it's taken every time
    a MMgrReport is handled, to look up the DaemonState
    for the sender.
    
    Fixes: http://tracker.ceph.com/issues/21158
    Signed-off-by: John Spray <john.spray@redhat.com>
    John Spray committed Sep 18, 2017
    Configuration menu
    Copy the full SHA
    806f108 View commit details
    Browse the repository at this point in the history
  2. mgr/DaemonServer: handle MMgrReports in parallel

    The DaemonStateIndex locking is sufficient to make all
    the report processing safe: holding DaemonServer::lock
    through all ms_dispatch was unnecessarily serializing
    dispatch.
    
    Signed-off-by: John Spray <john.spray@redhat.com>
    John Spray committed Sep 18, 2017
    Configuration menu
    Copy the full SHA
    64af9d3 View commit details
    Browse the repository at this point in the history
  3. mgr: make pgmap_ready atomic to avoid taking lock

    Signed-off-by: John Spray <john.spray@redhat.com>
    John Spray committed Sep 18, 2017
    Configuration menu
    Copy the full SHA
    d209157 View commit details
    Browse the repository at this point in the history