A mapped_device now has a specific immutable type (md->type) that is set during the initial table_load (see: patch 1/2). The DM device's request_queue will only have an elevator allocated and exposed via sysfs if it is request-based (see: patch 2/2). Please see the individual patch headers for more details. This patchset is based on agk's DM "editing" tree: http://www.kernel.org/pub/linux/kernel/people/agk/patches/2.6/editing/ (apply all patches listed in the series file up to NEXT_PATCHES_END) This patchset also depends on the following linux-2.6-block.git 'for-linus' branch commits: 01effb0 block: allow initialization of previously allocated request_queue e36f724 block: Adjust elv_iosched_show to return "none" for bio-based DM I've made a full quilt series available here (builds on 2.6.34): http://people.redhat.com/msnitzer/patches/dm-queue-init/latest/ I welcome all comments/review. v4 change: - dm_set_md_type takes a specific unsigned type rather than dm_table* v3 changes: - reduce table_load's md->type_lock protected critical section - only call dm_setup_md_queue on first table load - simplified dm_setup_md_queue as a result - use existing DM_TYPE_* definitions instead of duplicating them - eliminate overly verbose comments as the code speaks for itself much more clearly v2 changes: - remove do_resume and table_clear interlock - rebase to agk's latest "editing" tree - drop the dm_get_verified_mdptr and find_device_noinit patches that were at the end of v1; can revisit that code duplication cleanup later Mike Snitzer (2): dm: prevent table type changes after initial table load dm: only initialize full request_queue for request-based device drivers/md/dm-ioctl.c | 24 +++++++++ drivers/md/dm.c | 131 +++++++++++++++++++++++++++++++++++++------------ drivers/md/dm.h | 7 +++ 3 files changed, 130 insertions(+), 32 deletions(-) -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel