[PATCHv3 00/12] dmapool enhancements
From: Keith Busch
Date: Tue Jan 03 2023 - 14:19:11 EST
From: Keith Busch <kbusch@xxxxxxxxxx>
Time spent in dma_pool alloc/free increases linearly with the number of
pages backing the pool. We can reduce this to constant time with minor
changes to how free pages are tracked.
Changes since v2:
Added received reviews
Applied suggestions from Christoph (removed inlines, use preferred
conditional compiling style, minor changes in patch sequence, use
kzalloc)
Fixed printf formats caught by kernel test robot
Added one extra cleanup patch at the end
Keith Busch (8):
dmapool: add alloc/free performance test
dmapool: move debug code to own functions
dmapool: rearrange page alloc failure handling
dmapool: consolidate page initialization
dmapool: simplify freeing
dmapool: don't memset on free twice
dmapool: link blocks across pages
dmapool: create/destroy cleanup
Tony Battersby (4):
dmapool: remove checks for dev == NULL
dmapool: use sysfs_emit() instead of scnprintf()
dmapool: cleanup integer types
dmapool: speedup DMAPOOL_DEBUG with init_on_alloc
mm/Kconfig | 9 ++
mm/Makefile | 1 +
mm/dmapool.c | 371 ++++++++++++++++++++++------------------------
mm/dmapool_test.c | 147 ++++++++++++++++++
4 files changed, 331 insertions(+), 197 deletions(-)
create mode 100644 mm/dmapool_test.c
--
2.30.2