Project

General

Profile

Actions

Bug #3745

closed

krbd: individual response errors are ignored

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

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

0%

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

Description

A Linux I/O request on an rbd image is broken into one or
more rbd requests, one request directed to each osd object
backing the image.

Each of these rbd requests receives a response, and its
result code is recorded in a table (called a "collection").

I'm not exactly sure what happens from the request initiator's
perspective when an error occurs, but it looks to me like
the aggregate result may not reflect the fact that an error
was reported when one of the rbd requests completed.

I'll have to spend a little more time on this to make sure
it's right, but for now wanted to document the problem.

I am going to fix this in my new request management code
(http://tracker.newdream.net/issues/3741) but the problem
exists in the current code as well.

I'm not sure how important it is to fix the old code, but
if it needs fixing I'd rather fix the old code first.

Actions #1

Updated by Alex Elder about 11 years ago

  • Status changed from New to Rejected

I no longer believe this is a problem. Although there is no
aggregate result value for a collection of osd requests,
as each completes its result is passed to __blk_end_request(),
and that will take care of reporting an error to the original
block layer initiator.

The new request will maintain an aggregate status value
for image requests though, because not all requests will
be initiated by the Linux block layer.

In any case, rejecting this one.

Actions

Also available in: Atom PDF