Project

General

Profile

Actions

Bug #14364

closed

librados, objecter: op_submit() returns after request completion, AioCompletion related race

Added by Yehuda Sadeh over 8 years ago. Updated almost 8 years ago.

Status:
Resolved
Priority:
Urgent
Assignee:
Category:
-
Target version:
-
% Done:

0%

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

Description

The following line is problematic:

  c->tid = objecter->op_submit(objecter_op);

because the assignment might happen after the completion has been dropped. This can happen if we release the completion at the ack callback, and everything finishes before op_submit() returns. The fix should be by having op_submit() itself setting c->tid under a lock (or dropping c->tid altogether if not needed).

Actions #1

Updated by Samuel Just about 8 years ago

  • Priority changed from Normal to Urgent
Actions #2

Updated by Sage Weil about 8 years ago

  • Status changed from New to Fix Under Review
Actions #3

Updated by Kefu Chai about 8 years ago

  • Assignee set to Sage Weil
Actions #4

Updated by Sage Weil about 8 years ago

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

Updated by Sage Weil about 8 years ago

  • Status changed from In Progress to Resolved
Actions #6

Updated by Haomai Wang almost 8 years ago

do we need to backport this fix to hammer?

Actions

Also available in: Atom PDF