- Update DM crypt to allocate compound pages if possible.

- Fix DM crypt target's crypt_ctr_cipher_new return value on invalid
  AEAD cipher.

- Fix DM flakey testing target's write bio corruption feature to
  corrupt the data of a cloned bio instead of the original.

- Add random_read_corrupt and random_write_corrupt features to DM
  flakey target.

- Fix ABBA deadlock in DM thin metadata by resetting associated bufio
  client rather than destroying and recreating it.

- A couple other small DM thinp cleanups.

- Update DM core to support disabling block core IO stats accounting
  and optimize away code that isn't needed if stats are disabled.

- Other small DM core cleanups.

- Improve DM integrity target to not require so much memory on 32 bit
  systems. Also only allocate the recalculate buffer as needed (and
  increasingly reduce its size on allocation failure).

- Update DM integrity to use %*ph for printing hexdump of a small
  buffer. Also update DM integrity documentation.

- Various DM core ioctl interface hardening.  Now more careful about
  alignment of structures and processing of input passed to the kernel
  from userspace. Also disallow the creation of DM devices named
  "control", "." or ".."

- Eliminate GFP_NOIO workarounds for __vmalloc and kvmalloc in DM
  core's ioctl and bufio code.
dm: get rid of GFP_NOIO workarounds for __vmalloc and kvmalloc

In the past, the function __vmalloc didn't respect the GFP flags - it
allocated memory with the provided gfp flags, but it allocated page tables
with GFP_KERNEL. This was fixed in commit 451769ebb7e7 ("mm/vmalloc:
alloc GFP_NO{FS,IO} for vmalloc") so the memalloc_noio_{save,restore}
workaround is no longer needed.

The function kvmalloc didn't like flags different from GFP_KERNEL. This
was fixed in commit a421ef303008 ("mm: allow !GFP_KERNEL allocations
for kvmalloc"), so kvmalloc can now be called with GFP_NOIO.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
2 files changed