diff options
author | 2024-12-18 15:34:21 +0900 | |
---|---|---|
committer | 2025-01-25 20:22:20 -0800 | |
commit | ef932cd23b78e8bc3a4162c8c63d434b8446b8b5 (patch) | |
tree | 877b0cb4497a0f8a248d1a6def987fea74ed99bd /mm/hugetlb.c | |
parent | zram: factor out ZRAM_SAME write (diff) | |
download | wireguard-linux-ef932cd23b78e8bc3a4162c8c63d434b8446b8b5.tar.xz wireguard-linux-ef932cd23b78e8bc3a4162c8c63d434b8446b8b5.zip |
zram: factor out ZRAM_HUGE write
zram_write_page() handles: ZRAM_SAME pages (which was already factored
out) stores, regular page stores and ZRAM_HUGE pages stores.
ZRAM_HUGE handling adds a significant amount of complexity. Instead, we
can handle ZRAM_HUGE in a separate function. This allows us to simplify
zs_handle allocations slow-path, as it now does not handle ZRAM_HUGE case.
ZRAM_HUGE zs_handle allocation, on the other hand, can now drop
__GFP_KSWAPD_RECLAIM because we handle ZRAM_HUGE in preemptible context
(outside of local-lock scope).
Link: https://lkml.kernel.org/r/20241218063513.297475-5-senozhatsky@chromium.org
Signed-off-by: Sergey Senozhatsky <senozhatsky@chromium.org>
Cc: Minchan Kim <minchan@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'mm/hugetlb.c')
0 files changed, 0 insertions, 0 deletions