- DM core passthrough ioctl fix to retain reference to DM table, and
  that table's block devices, while issuing the ioctl to one of those
  block devices.

- DM core passthrough ioctl fix to _not_ override the fmode_t used to
  issue the ioctl.  Overriding by using the fmode_t that the block
  device was originally open with during DM table load is a liability.

- Add DM core support for secure erase forwarding and update the DM
  linear and DM striped targets to support them.

- A DM core 4.16 stable fix to allow abnormal IO (e.g. discard, write
  same, write zeroes) for targets that make use of the non-splitting IO
  variant (as is done for multipath or thinp when layered directly on
  NVMe).

- Allow DM targets to return a payload in response to a DM message that
  they are sent.  This is useful for DM targets that would like to
  provide statistics data in response to DM messages.

- Update DM bufio to support non-power-of-2 block sizes.  Numerous other
  related changes prepare the DM bufio code for this support.

- Fix DM crypt to use a bounded amount of memory across the entire
  system.  This is to avoid OOM that can otherwise occur in response to
  certain pathological IO workloads (e.g. discarding a large DM crypt
  device).

- Add a 'check_at_most_once' feature to the DM verity target to allow
  verity to be used on mobile devices that have very limited resources.

- Fix the DM integrity target to fail early if a keyed algorithm
  (e.g. HMAC) is to be used but the key isn't set.

- Add non-power-of-2 support to the DM unstripe target.

- Eliminate the use of a Variable Length Array in the DM stripe target.

- Update the DM log-writes target to record metadata (REQ_META flag).

- DM raid fixes for its nosync status and some variable range issues.
dm: remove fmode_t argument from .prepare_ioctl hook

Use the fmode_t that is passed to dm_blk_ioctl() rather than
inconsistently (varies across targets) drop it on the floor by
overriding it with the fmode_t stored in 'struct dm_dev'.

All the persistent reservation functions weren't using the fmode_t they
got back from .prepare_ioctl so remove them.

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
9 files changed