Re: [PATCH v5 17/21] libnvdimm: infrastructure for btt devices

From: Matthew Wilcox
Date: Wed Jun 10 2015 - 14:46:31 EST


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.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/