Project

General

Profile

Bug #17254

Possible deadlock race condition between image close and librados shutdown

Added by Jason Dillaman over 2 years ago. Updated about 2 years ago.

Status:
Resolved
Priority:
High
Target version:
-
Start date:
09/09/2016
Due date:
% Done:

0%

Source:
other
Tags:
Backport:
jewel
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:

Description

librbd::ImageWatcher::C_UnwatchAndFlush instantiates a librados::Rados class to invoke aio_watch_flush. However, it's possible that the destruction of this librados::Rados instance could race with an explicit librados::Rados::shutdown request of the same connection. This results in a deadlock as librados::Rados::shutdown holds the lock but waits for the finisher to flush the watches -- but the finisher is now deadlocked trying to acquire the librados::Rados lock.

See ticket #17252


Related issues

Copied to rbd - Backport #17265: jewel: Possible deadlock race condition between image close and librados shutdown Resolved

History

#1 Updated by Jason Dillaman over 2 years ago

  • Priority changed from Normal to High

#2 Updated by Jason Dillaman over 2 years ago

  • Status changed from In Progress to Need Review

#3 Updated by Mykola Golub over 2 years ago

  • Status changed from Need Review to Pending Backport

#4 Updated by Xiaoxi Chen over 2 years ago

  • Copied to Backport #17265: jewel: Possible deadlock race condition between image close and librados shutdown added

#5 Updated by Loic Dachary about 2 years ago

  • Status changed from Pending Backport to Resolved

Also available in: Atom PDF