The consensus from LSF was that bcache need not invent a new interface when md and dm can both do the job. As mentioned in patch 7 this series aims to be a minimal conversion. Other refactoring items like deprecating register_lock for mddev->reconfig_mutex are deferred. This supports assembly of an already established cache array: mdadm -A /dev/md/bcache /dev/sd[ab] ...will create the /dev/md/bcache container and a subarray representing the cache volume. "Flash-only", or backing-device only volumes were not tested. "Create" support and hot-add/hot-remove come later. Note: * When attempting to test with small loopback devices (100MB), assembly soft locks in bcache_journal_read(). That hang went away with larger devices, so there seems to be minimum component device size that needs to be considered in the tooling. --- Dan Williams (7): bcache: compile fix bcache: disable lockdep, enable CONFIG_BCACHE=m bcache: drop select COMPACTION bcache: fix symlink removal bcache: move to drivers/md/ bcache: uplevel allocation of 'cached_dev' and 'cache' md: add bcache personality drivers/block/Kconfig | 2 drivers/block/Makefile | 1 drivers/md/Kconfig | 14 + drivers/md/Makefile | 1 drivers/md/bcache/Kconfig | 3 drivers/md/bcache/Makefile | 2 drivers/md/bcache/alloc.c | 0 drivers/md/bcache/bcache.h | 39 ++++ drivers/md/bcache/bset.c | 0 drivers/md/bcache/bset.h | 0 drivers/md/bcache/btree.c | 18 -- drivers/md/bcache/btree.h | 0 drivers/md/bcache/debug.c | 0 drivers/md/bcache/debug.h | 0 drivers/md/bcache/io.c | 0 drivers/md/bcache/journal.c | 0 drivers/md/bcache/journal.h | 0 drivers/md/bcache/md.c | 374 ++++++++++++++++++++++++++++++++++++ drivers/md/bcache/request.c | 24 +- drivers/md/bcache/request.h | 0 drivers/md/bcache/stats.c | 0 drivers/md/bcache/stats.h | 0 drivers/md/bcache/super.c | 394 +++++++++----------------------------- drivers/md/bcache/sysfs.c | 49 ----- drivers/md/bcache/sysfs.h | 0 drivers/md/bcache/trace.c | 0 drivers/md/bcache/util.c | 2 drivers/md/bcache/util.h | 3 drivers/md/bcache/writeback.c | 0 kernel/lockdep.c | 1 30 files changed, 539 insertions(+), 388 deletions(-) rename drivers/{block/bcache/Kconfig => md/bcache/Kconfig} (95%) rename drivers/{block/bcache/Makefile => md/bcache/Makefile} (77%) rename drivers/{block/bcache/alloc.c => md/bcache/alloc.c} (100%) rename drivers/{block/bcache/bcache.h => md/bcache/bcache.h} (94%) rename drivers/{block/bcache/bset.c => md/bcache/bset.c} (100%) rename drivers/{block/bcache/bset.h => md/bcache/bset.h} (100%) rename drivers/{block/bcache/btree.c => md/bcache/btree.c} (99%) rename drivers/{block/bcache/btree.h => md/bcache/btree.h} (100%) rename drivers/{block/bcache/debug.c => md/bcache/debug.c} (100%) rename drivers/{block/bcache/debug.h => md/bcache/debug.h} (100%) rename drivers/{block/bcache/io.c => md/bcache/io.c} (100%) rename drivers/{block/bcache/journal.c => md/bcache/journal.c} (100%) rename drivers/{block/bcache/journal.h => md/bcache/journal.h} (100%) create mode 100644 drivers/md/bcache/md.c rename drivers/{block/bcache/request.c => md/bcache/request.c} (98%) rename drivers/{block/bcache/request.h => md/bcache/request.h} (100%) rename drivers/{block/bcache/stats.c => md/bcache/stats.c} (100%) rename drivers/{block/bcache/stats.h => md/bcache/stats.h} (100%) rename drivers/{block/bcache/super.c => md/bcache/super.c} (83%) rename drivers/{block/bcache/sysfs.c => md/bcache/sysfs.c} (95%) rename drivers/{block/bcache/sysfs.h => md/bcache/sysfs.h} (100%) rename drivers/{block/bcache/trace.c => md/bcache/trace.c} (100%) rename drivers/{block/bcache/util.c => md/bcache/util.c} (99%) rename drivers/{block/bcache/util.h => md/bcache/util.h} (99%) rename drivers/{block/bcache/writeback.c => md/bcache/writeback.c} (100%) -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html