Project

General

Profile

Actions

Feature #4709

closed

krbd: support stripingv2 images that don't require I/O path changes

Added by Josh Durgin about 11 years ago. Updated about 11 years ago.

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

0%

Source:
Development
Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

Currently when the rbd command creates format 2 images, due to a bug it always includes the STRIPINGV2 feature bit unless the user explicitly specifies striping parameters that wouldn't change the I/O path. The set of cases where no I/O path changes are needed is:

stripe_count == 1
stripe_unit == (1 << order) // i.e. object size

In this case (which is the current default for a format 2 image), the actual striping is the same as in a non-STRIPINGV2 image with that object order.

To work with these images, the kernel client needs to fetch the stripe_count and stripe_unit via the get_stripe_unit_count class method when the image has the STRIPINGV2 feature bit, and check if they match those critieria. If they do, the kernel client should proceed. Otherwise, more changes would be needed to support the image, so an error should be returned.

Actions #1

Updated by Alex Elder about 11 years ago

  • Status changed from 12 to In Progress

Starting work on this.

Actions #2

Updated by Alex Elder about 11 years ago

  • Status changed from In Progress to Fix Under Review

The following has been posted for review and is available
in the "review/wip-stripe-v2" branch of the ceph-client
git repository.

[PATCH] rbd: get and check striping parameters

Actions #3

Updated by Alex Elder about 11 years ago

  • Status changed from Fix Under Review to Resolved

The following has been committed to the "testing" branch
of the ceph-client git repository:

09186dd rbd: get and check striping parameters

Actions

Also available in: Atom PDF