zswap_cpu_comp_prepare() is called on a different CPU with the CPU which will really send acomp_req. In order to use the right local compressors, this patch specifies the NUMA node to which the CPU sending acomp_req belongs. Cc: Seth Jennings <sjenning@xxxxxxxxxx> Cc: Dan Streetman <ddstreet@xxxxxxxx> Cc: Vitaly Wool <vitaly.wool@xxxxxxxxxxxx> Cc: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> Cc: David S. Miller" <davem@xxxxxxxxxxxxx> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Signed-off-by: Barry Song <song.bao.hua@xxxxxxxxxxxxx> --- mm/zswap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mm/zswap.c b/mm/zswap.c index 0d914ba6b4a0..9b1aa477022e 100644 --- a/mm/zswap.c +++ b/mm/zswap.c @@ -437,7 +437,7 @@ static int zswap_cpu_comp_prepare(unsigned int cpu, struct hlist_node *node) pr_err("Could not initialize acomp_ctx\n"); return -ENOMEM; } - acomp = crypto_alloc_acomp(pool->tfm_name, 0, 0); + acomp = crypto_alloc_acomp_node(pool->tfm_name, 0, 0, cpu_to_node(cpu)); if (IS_ERR_OR_NULL(acomp)) { pr_err("could not alloc crypto acomp %s : %ld\n", pool->tfm_name, PTR_ERR(acomp)); -- 2.27.0