• Nhat Pham's avatar
    zswap: change zswap's default allocator to zsmalloc · 64d4d49c
    Nhat Pham authored
    Out of zswap's 3 allocators, zsmalloc is the clear superior in terms of
    memory utilization, both in theory and as observed in practice, with its
    high storage density and low internal fragmentation.  zsmalloc is also
    more actively developed and maintained, since it is the allocator of
    choice for zswap for many users, as well as the only allocator for zram.
    
    A historical objection to the selection of zsmalloc as the default
    allocator for zswap is its lack of writeback capability.  However, this
    has changed, with the zsmalloc writeback patchset, and the subsequent
    zswap LRU refactor.  With this, there is not a lot of good reasons to keep
    zbud, an otherwise inferior allocator, as the default instead of zswap.
    
    This patch changes the default allocator to zsmalloc.  The only exception
    is on settings without MMU, in which case zbud will remain as the default.
    
    Link: https://lkml.kernel.org/r/20230908235115.2943486-1-nphamcs@gmail.comSigned-off-by: default avatarNhat Pham <nphamcs@gmail.com>
    Acked-by: default avatarJohannes Weiner <hannes@cmpxchg.org>
    Acked-by: default avatarYosry Ahmed <yosryahmed@google.com>
    Cc: Dan Streetman <ddstreet@ieee.org>
    Cc: Domenico Cerasuolo <cerasuolodomenico@gmail.com>
    Cc: Seth Jennings <sjenning@redhat.com>
    Cc: Vitaly Wool <vitaly.wool@konsulko.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    64d4d49c
Kconfig 39.4 KB