Lines Matching full:alignment
312 * By default there is no limit on the segment boundary alignment, in blk_validate_limits()
444 unsigned int alignment = sector_div(sector, granularity >> SECTOR_SHIFT) in queue_limit_alignment_offset() local
447 return (granularity + lim->alignment_offset - alignment) % granularity; in queue_limit_alignment_offset()
453 unsigned int alignment, granularity, offset; in queue_limit_discard_alignment() local
459 alignment = lim->discard_alignment >> SECTOR_SHIFT; in queue_limit_discard_alignment()
468 offset = (granularity + alignment - offset) % granularity; in queue_limit_discard_alignment()
494 * attempt to combine the values and ensure proper alignment.
497 * top device's block sizes and alignment offsets may be adjusted to
498 * ensure alignment with the bottom device. If no compatible sizes
506 unsigned int top, bottom, alignment, ret = 0; in blk_stack_limits() local
547 alignment = queue_limit_alignment_offset(b, start); in blk_stack_limits()
549 /* Bottom device has different alignment. Check that it is in blk_stack_limits()
550 * compatible with the current top alignment. in blk_stack_limits()
552 if (t->alignment_offset != alignment) { in blk_stack_limits()
556 bottom = max(b->physical_block_size, b->io_min) + alignment; in blk_stack_limits()
608 t->alignment_offset = lcm_not_zero(t->alignment_offset, alignment) in blk_stack_limits()
621 /* Discard alignment and granularity */ in blk_stack_limits()
623 alignment = queue_limit_discard_alignment(b, start); in blk_stack_limits()
631 t->discard_alignment = lcm_not_zero(t->discard_alignment, alignment) % in blk_stack_limits()
659 * attempt to combine the values and ensure proper alignment.