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

Also available in: Atom PDF