[PATCH v4 0/3] mm/zswap & crypto/compress: remove a couple of memcpy

From: Barry Song
Date: Mon Feb 19 2024 - 21:56:24 EST


From: Barry Song <v-songbaohua@xxxxxxxx>

The patchset removes a couple of memcpy in zswap and crypto
to improve zswap's performance.

Thanks for Chengming Zhou's test and perf data.
Quote from Chengming,
I just tested these three patches on my server, found improvement in the
kernel build testcase on a tmpfs with zswap (lz4 + zsmalloc) enabled.

mm-stable 501a06fe8e4c patched
real 1m38.028s 1m32.317s
user 19m11.482s 18m39.439s
sys 19m26.445s 17m5.646s


This patchset applies to mm-unstable as recently zswap has
lots of change.

-v4:
* introduce a helper for algorithm flags according to Herbert
* fix cra_flags for intel and hisilicon async drivers

Barry Song (3):
crypto: introduce crypto_acomp_get_alg_flags to expose algorithm flags
mm/zswap: remove the memcpy if acomp is not sleepable
crypto: scompress: remove memcpy if sg_nents is 1

crypto/scompress.c | 36 +++++++++++++++++-----
drivers/crypto/hisilicon/zip/zip_crypto.c | 1 +
drivers/crypto/intel/iaa/iaa_crypto_main.c | 1 +
include/crypto/acompress.h | 5 +++
include/linux/crypto.h | 5 +++
mm/zswap.c | 7 +++--
6 files changed, 46 insertions(+), 9 deletions(-)

--
2.34.1