- Update DM core to directly call the map function for both the linear
  and stripe targets; which are provided by DM core.

- Various updates to use new safer string functions.

- Update DM core to respect REQ_NOWAIT flag in normal bios so that
  memory allocations are always attempted with GFP_NOWAIT.

- Add Mikulas Patocka to MAINTAINERS as a DM maintainer!

- Improve DM delay target's handling of short delays (< 50ms) by using
  a kthread to check expiration of IOs rather than timers and a wq.

- Update the DM error target so that it works with zoned storage. This
  helps xfstests to provide proper IO error handling coverage when
  testing a filesystem with native zoned storage support.

- Update both DM crypt and integrity targets to improve performance by
  using crypto_shash_digest() rather than init+update+final sequence.

- Fix DM crypt target by backfilling missing memory allocation
  accounting for compound pages.
dm crypt: account large pages in cc->n_allocated_pages

The commit 5054e778fcd9c ("dm crypt: allocate compound pages if
possible") changed dm-crypt to use compound pages to improve
performance. Unfortunately, there was an oversight: the allocation of
compound pages was not accounted at all. Normal pages are accounted in
a percpu counter cc->n_allocated_pages and dm-crypt is limited to
allocate at most 2% of memory. Because compound pages were not
accounted at all, dm-crypt could allocate memory over the 2% limit.

Fix this by adding the accounting of compound pages, so that memory
consumption of dm-crypt is properly limited.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Fixes: 5054e778fcd9c ("dm crypt: allocate compound pages if possible")
Cc: stable@vger.kernel.org	# v6.5+
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
1 file changed