Project

General

Profile

Actions

Bug #3937

closed

krbd: crash in rbd_assert(osd_req == obj_request->osd_req)

Added by Alex Elder over 11 years ago. Updated about 11 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Target version:
-
% Done:

0%

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

Description

Looking at a crash this morning in the new request code due
to this failed assertion in rbd_osd_req_callback():
rbd_assert(osd_req == obj_request->osd_req);

When an osd request is submitted we stash a pointer to the
object request structure in its r_priv field, and assign
rbd_osd_req_callback() as its r_callback function.

This assertion is saying that an osd request completed
and apparently had a valid r_priv pointer, but it did
not properly point back at the osd request.

This suggests either the osd request or the object
request was used after being freed, or something more
insidious is going on.

Actions

Also available in: Atom PDF