Actions
Bug #21566
closedOSDService::recovery_need_sleep read+updated without locking
% Done:
0%
Source:
Tags:
Backport:
luminous
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Component(RADOS):
OSD
Pull request ID:
Crash signature (v1):
Crash signature (v2):
Description
Unless I'm misreading this, OSD::do_recovery() is invoked from the ShardedOpQueue without holding any locks on global OSD state. And then we both read and edit the recovery_needs_sleep member without holding the recovery_request_lock or anything else that prevents it from being handled by multiple threads?`
Actions