blk_stack_limits - adjust queue_limits for stacked devices
2. SYNOPSIS ▲
int blk_stack_limits(struct queue_limits * t , struct queue_limits * b , sector_t start );
3. ARGUMENTS ▲
the stacking driver limits (top device)
the underlying queue limits (bottom, component device)
first data sector within component device
4. DESCRIPTION ▲
This function is used by stacking drivers like MD and DM to ensure that all component devices have compatible block sizes and alignments. The stacking driver must provide a queue_limits struct (top) and then iteratively call the stacking function for all component (bottom) devices. The stacking function will attempt to combine the values and ensure proper alignment.
Returns 0 if the top and bottom queue_limits are compatible. The top deviceAqs block sizes and alignment offsets may be adjusted to ensure alignment with the bottom device. If no compatible sizes and alignments exist, -1 is returned and the resulting top queue_limits will have the misaligned flag set to indicate that the alignment_offset is undefined.
5. COPYRIGHT ▲