>>>>> "Mike" == Mike Snitzer <snitzer@xxxxxxxxxx> 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 -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel