[dm-devel] [PATCH v9] dax, dm: introduce ->fs_{claim, release}() dax_device infrastructure
Mike Snitzer
snitzer at redhat.com
Tue Apr 3 21:13:20 UTC 2018
On Tue, Apr 03 2018 at 4:36pm -0400,
Dan Williams <dan.j.williams at intel.com> wrote:
> In preparation for allowing filesystems to augment the dev_pagemap
> associated with a dax_device, add an ->fs_claim() callback. The
> ->fs_claim() callback is leveraged by the device-mapper dax
> implementation to iterate all member devices in the map and repeat the
> claim operation across the array.
>
> In order to resolve collisions between filesystem operations and DMA to
> DAX mapped pages we need a callback when DMA completes. With a callback
> we can hold off filesystem operations while DMA is in-flight and then
> resume those operations when the last put_page() occurs on a DMA page.
> The ->fs_claim() operation arranges for this callback to be registered,
> although that implementation is saved for a later patch.
>
> Cc: Alasdair Kergon <agk at redhat.com>
> Cc: Mike Snitzer <snitzer at redhat.com>
> Cc: Matthew Wilcox <mawilcox at microsoft.com>
> Cc: Ross Zwisler <ross.zwisler at linux.intel.com>
> Cc: "Jérôme Glisse" <jglisse at redhat.com>
> Cc: Christoph Hellwig <hch at lst.de>
> Cc: Jan Kara <jack at suse.cz>
> Signed-off-by: Dan Williams <dan.j.williams at intel.com>
> ---
> Changes since v8:
> * make __fs_dax_claim and __fs_dax_release private to
> drivers/dax/super.c
>
> * rename dm_dax_iterate to dm_dax_interate_devices (Mike)
>
> * drop the return value from dm_dax_interate_devices since nothing uses
> it (Mike)
Acked-by: Mike Snitzer <snitzer at redhat.com>
More information about the dm-devel
mailing list