I've pushed out a new version of my code that avoids atomic ops for the single bio case: http://git.infradead.org/users/hch/block.git/shortlog/refs/heads/new-dio I think we should take your extension of the existing __blkdev_direct_IO_simple to kmalloc up to BIO_MAX_PAGES and then use the above implementation for AIO and large synchronous I/O. I think I can also kill of blkdev_dio_pool by simply using bio_kmalloc as we're only doing the allocation at the beginning of the call, but I'd like to agree on an approach before spending too much time on it. -- To unsubscribe from this list: send the line "unsubscribe linux-block" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html