On Tue, Jun 09, 2015 at 08:42:00AM +0200, Christoph Hellwig wrote:
quoted
The BTT driver is the initial first consumer of this mechanism to allow
layering atomic sector update guarantees on top of nd_io capable
libnvdimm-block-devices, or their partitions.
As mentioned during the last time of the review the layering here
is complete broken. If you expose additional capabilities from a block
device do it at the block device level. That is enhance the rw_page
callback to allo byte sized access, add a capability flag on the queue,
etc.
Don't screw up rw_page. The point of rw_page is to read or write a page
cache page. It can sleep, and it indicates success by using the page
flags. Don't try and scqueeze rw_bytes into it. If you want rw_bytes
to be a queue operation, that's one thing, but don't mess with rw_page.