dm: add ->flush() dax operation support
authorDan Williams <dan.j.williams@intel.com>
Mon, 29 May 2017 20:02:52 +0000 (13:02 -0700)
committerDan Williams <dan.j.williams@intel.com>
Thu, 15 Jun 2017 21:34:59 +0000 (14:34 -0700)
commitabebfbe2f7315dd3ec9a0c69596a76e32beb5749
treee0b8a531424d7625e19a82a9151fa64a0a30671b
parent3c1cebff23cdca01c421411e953a9e239f2b9ef9
dm: add ->flush() dax operation support

Allow device-mapper to route flush operations to the
per-target implementation. In order for the device stacking to work we
need a dax_dev and a pgoff relative to that device. This gives each
layer of the stack the information it needs to look up the operation
pointer for the next level.

This conceptually allows for an array of mixed device drivers with
varying flush implementations.

Reviewed-by: Toshi Kani <toshi.kani@hpe.com>
Reviewed-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/dax/super.c
drivers/md/dm-linear.c
drivers/md/dm-stripe.c
drivers/md/dm.c
include/linux/dax.h
include/linux/device-mapper.h