mbox series

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

Message ID 20240220064414.262582-1-21cnbao@gmail.com (mailing list archive)
Headers show
Series mm/zswap & crypto/compress: remove a couple of memcpy | expand

Message

Barry Song Feb. 20, 2024, 6:44 a.m. UTC
From: Barry Song <v-songbaohua@oppo.com>

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.

-v5:
  * remove the helper of exposing algorithm flags, alternative directly
    expose acomp_is_async() by test ASYNC flag according to Herbert;
  * remove the fixes of cra_flags for intel and hisilicon async drivers,
    they are separated patches[1] according to Herbert

[1] https://lore.kernel.org/linux-crypto/20240220044222.197614-1-v-songbaohua@oppo.com/

Barry Song (3):
  crypto: introduce: acomp_is_async to expose if comp drivers might
    sleep
  mm/zswap: remove the memcpy if acomp is not sleepable
  crypto: scompress: remove memcpy if sg_nents is 1

 crypto/scompress.c         | 36 +++++++++++++++++++++++++++++-------
 include/crypto/acompress.h |  6 ++++++
 mm/zswap.c                 |  6 ++++--
 3 files changed, 39 insertions(+), 9 deletions(-)