The original series [1] was almost merged, but was dropped due to a last minute bug [2]. Resending this with the fix for it, by handling zeromap in the same way as swap_map and cluster_info in enable_swap_info, holding swapon_mutex and si->lock, hence avoiding a race condition between swapon and any point where the lock is held. This is the safest way. The series had already been reviewed and acked. Hoping that this attempt goes better than the initial one :) This patchseries is based on top of mm-unstable from today: 4926e8348e10 - (akpm/mm-unstable) mm: optimization on page allocation when CMA enabled [1] https://lore.kernel.org/all/20240627105730.3110705-1-usamaarif642@xxxxxxxxx/ [2] https://lore.kernel.org/all/202407101031.c6c3c651-lkp@xxxxxxxxx/ Usama Arif (2): mm: store zero pages to be swapped out in a bitmap mm: remove code to handle same filled pages include/linux/swap.h | 1 + mm/page_io.c | 118 ++++++++++++++++++++++++++++++++++++++++++- mm/swapfile.c | 38 ++++++++++++-- mm/zswap.c | 85 +++---------------------------- 4 files changed, 159 insertions(+), 83 deletions(-) -- 2.43.5