This is the dio rewrite based on immutable biovecs that I've been working on off and on for quite some time now; I think it's getting close to ready. It passes xfstests with xfs and CONFIG_XFS_DEBUG=y, though it definitely needs more review and outside testing. It doesn't quite work with btrfs but I think with a bit of help from the btrfs people that one will be easy to figure out. This this cuts fs/direct-io.c almost in half by lines of code, makes it _vastly_ easier to understand, and roughly halves the cpu overhead of the dio code in the profiles I've looked at. It's only stage one of my master plan, though. Eventually, the goal is to get the filesystem direct_IO() method to take bios (at which point it'll be analagous to a make_request fn, probably) - that'll have a lot of benefits I won't go into here but it's going to take some delicate surgery to get here. This code starts to restructure things in that direction, doing about as much as I could without going outside of fs/direct-io.c. The patch series is on top of Jens' for-3.14/core branch, and includes all the prereqs that haven't gone in yet. It's available in my git repo: git://evilpiepirate.org/~kent/linux-bcache.git dio -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html