Re: [PATCH v2 12/30] dax: remove block device dependencies

From: Dan Williams
Date: Wed May 15 2019 - 21:50:16 EST


On Wed, May 15, 2019 at 12:28 PM Vivek Goyal <vgoyal@xxxxxxxxxx> wrote:
>
> From: Stefan Hajnoczi <stefanha@xxxxxxxxxx>
>
> Although struct dax_device itself is not tied to a block device, some
> DAX code assumes there is a block device. Make block devices optional
> by allowing bdev to be NULL in commonly used DAX APIs.
>
> When there is no block device:
> * Skip the partition offset calculation in bdev_dax_pgoff()
> * Skip the blkdev_issue_zeroout() optimization
>
> Note that more block device assumptions remain but I haven't reach those
> code paths yet.
>

Is there a generic object that non-block-based filesystems reference
for physical storage as a bdev stand-in? I assume "sector_t" is still
the common type for addressing filesystem capacity?

It just seems to me that we should stop pretending that the
filesystem-dax facility requires block devices and try to move this
functionality to generically use a dax device across all interfaces.