Messages in this thread | | | Date | Wed, 10 Jun 2015 14:46:16 -0400 | From | Matthew Wilcox <> | Subject | Re: [PATCH v5 17/21] libnvdimm: infrastructure for btt devices |
| |
On Tue, Jun 09, 2015 at 08:42:00AM +0200, Christoph Hellwig wrote: > > 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.
| |