[PATCH v2 0/2] Fix the compatibility of zsmalloc and zswap

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The compatibility of zsmalloc and zswap was broken by commit 1ec3b5fe6eec
("mm/zswap: move to use crypto_acomp API for hardware acceleration").

patch #1 add a flag to zpool, then zswap used it to determine if zpool
drivers such as zbud/z3fold/zsmalloc will enter an atomic context after
mapping. the difference between zbud/z3fold and zsmalloc is that zsmalloc
requires an atomic context since its map function holds a
preempt-disabled lock, but zbud/z3fold don't require an atomic context.
so patch #2 set flag sleep_mapped to true indicates that zbud/z3fold can
sleep after mapping. zsmalloc didn't support sleep after mapping, so not
set that flag to true.

-v2:
  * folded-merged sanitizer check patches into tiantao's patch1(done by
  Andrew);
  * added fixes tag in changelog and refined commit log(done by Barry)

Tian Tao (2):
  mm/zswap: add a flag to indicate if zpool can do sleep map
  mm: set the sleep_mapped to true for zbud and z3fold

 include/linux/zpool.h |  3 +++
 mm/z3fold.c           |  1 +
 mm/zbud.c             |  1 +
 mm/zpool.c            | 13 +++++++++++
 mm/zswap.c            | 51 ++++++++++++++++++++++++++++++++++++++-----
 5 files changed, 64 insertions(+), 5 deletions(-)

-- 
2.25.1






[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux