[dm-devel] [PATCH v2] dm: Fix alignment stacking on partitioned devices
Martin K. Petersen
martin.petersen at oracle.com
Thu Jan 7 17:15:00 UTC 2010
>>>>> "Mike" == Mike Snitzer <snitzer at redhat.com> writes:
>> However, there are other subsystems that need to stack without an
>> associated block_device. So instead of changing blk_stack_limits I
>> propose we use the wrapper below.
Mike> Yes, looks like osdblk.c's use of blk_queue_stack_limits()
DM also does a stacking pass without a bdev (dm_calculate_queue_limits),
although I think you can avoid that by getting rid of ti_limits
altogether and just stack limits.
I couldn't figure out why the alignment_offset for a misaligned DM
device was zero, despite being -1 after stacking had completed. I
finally spotted this in dm_table_set_restrictions():
limits->alignment_offset = 0;
limits->misaligned = 0;
So after all the stacking function's hard work you set the alignment to
0 and clear the misaligned flag. Why?
--
Martin K. Petersen Oracle Linux Engineering
More information about the dm-devel
mailing list