Project

General

Profile

Actions

Bug #17254

closed

Possible deadlock race condition between image close and librados shutdown

Added by Jason Dillaman over 7 years ago. Updated over 7 years ago.

Status:
Resolved
Priority:
High
Assignee:
Jason Dillaman
Target version:
-
% Done:

0%

Source:
other
Tags:
Backport:
jewel
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

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 1 (0 open1 closed)

Copied to rbd - Backport #17265: jewel: Possible deadlock race condition between image close and librados shutdownResolvedLoïc DacharyActions
Actions #1

Updated by Jason Dillaman over 7 years ago

  • Priority changed from Normal to High
Actions #2

Updated by Jason Dillaman over 7 years ago

  • Status changed from In Progress to Fix Under Review
Actions #3

Updated by Mykola Golub over 7 years ago

  • Status changed from Fix Under Review to Pending Backport
Actions #4

Updated by Xiaoxi Chen over 7 years ago

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

Updated by Loïc Dachary over 7 years ago

  • Status changed from Pending Backport to Resolved
Actions

Also available in: Atom PDF