On Sat, 2009-07-18 at 13:04 -0700, Dan Williams wrote: > On Sat, Jul 18, 2009 at 11:42 AM, David Woodhouse<dwmw2@xxxxxxxxxxxxx> wrote: > > On Sat, 18 Jul 2009, Dan Williams wrote: > >> I was under the impression that btrfs wanted to leverage md's stripe > >> handling logic as well, seems that is not the case? > > > > No. We do a bunch of the stuff you mention above, but entirely within the > > file system so we don't have to invent a bunch of layering violations just > > to work around a broken design. > > Sure, a layering violation for an existing filesystem. For btrfs, at > LSF'09, we briefly talked about breaking out more than just the > erasure codes from software-raid into a "libraid". At some point in > the i/o path a btrfs stripe operation becomes indistinguishable from a > raid5,6 operation so at first glance there appears to be room to share > common infrastructure like portions of handle_stripe for example. At this point we've actually implemented the fundamental parts of RAID[56] support in btrfs, and it's looking like all we really want is the arithmetic routines. Perhaps that's because I'm insufficiently familiar with the handle_stripe() function to which you refer. Would you like to take to take a look at http://git.infradead.org/users/dwmw2/btrfs-raid56.git and attempt to convince me that I should be reusing more? Criticism in 'diff -up' form is always welcome... :) -- David Woodhouse Open Source Technology Centre David.Woodhouse@xxxxxxxxx Intel Corporation -- 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