Thanks. Just followed my nose ;). So this implementation handles two sequential IO operations happening at once as-well or better than the md implementation - the md implementation tracks sequential IO at the array level and at the result-of-an-IO level, but due to tagged IOs the latter can be incorrect and the former fails if two different processes are both doing sequential reads. The implementation I've put together will either end up sticking on one disk for the IO's if both are closer together, or will no sequential IO on both disks if the starting position of each is closer to the relevant sectors.
tl;dr - both implementations still have tradeoffs. merging of IO's happens separately; I think dm has space for a merge routine in the layer, and we probably would benefit from that - merging IO's sent to the raid1 driver would let us get bigger IO's we can sensibly dispatch round-robin style - basically have both disks reading and head moving roughly in sync. I don't know if I'll get time to fiddle with that,but who knows ;) -Rob -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/361733 Title: dmraid(fakeRAID) raid1 driver doesn't loadbalance reads To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/361733/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs