diff options
author | Yosry Ahmed <[email protected]> | 2025-01-13 21:44:58 +0000 |
---|---|---|
committer | Andrew Morton <[email protected]> | 2025-01-15 21:15:43 -0800 |
commit | 779b9955f64327c339a16f68055af98252fd3315 (patch) | |
tree | 9b798f6e5170ad885db4f4fbc8d254057e40fa10 /kernel/trace/trace_output.c | |
parent | f1897f2f08b28ae59476d8b73374b08f856973af (diff) |
mm: zswap: move allocations during CPU init outside the lock
In zswap_cpu_comp_prepare(), allocations are made and assigned to various
members of acomp_ctx under acomp_ctx->mutex. However, allocations may
recurse into zswap through reclaim, trying to acquire the same mutex and
deadlocking.
Move the allocations before the mutex critical section. Only the
initialization of acomp_ctx needs to be done with the mutex held.
Link: https://lkml.kernel.org/r/[email protected]
Fixes: 12dcb0ef5406 ("mm: zswap: properly synchronize freeing resources during CPU hotunplug")
Signed-off-by: Yosry Ahmed <[email protected]>
Reviewed-by: Chengming Zhou <[email protected]>
Cc: Johannes Weiner <[email protected]>
Cc: Nhat Pham <[email protected]>
Cc: <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Diffstat (limited to 'kernel/trace/trace_output.c')
0 files changed, 0 insertions, 0 deletions