mm: z3fold: deprecate CONFIG_Z3FOLD[ Upstream commit 7a2369b74abf76cd3e54c45b30f6addb497f831b ]The z3fold compressed pages allocator is rarely used, most users usezsmalloc. The only disadvantag
mm: z3fold: deprecate CONFIG_Z3FOLD[ Upstream commit 7a2369b74abf76cd3e54c45b30f6addb497f831b ]The z3fold compressed pages allocator is rarely used, most users usezsmalloc. The only disadvantage of zsmalloc in comparison is thedependency on MMU, and zbud is a more common option for !MMU as it was thedefault zswap allocator for a long time.Historically, zsmalloc had worse latency than zbud and z3fold but offeredbetter memory savings. This is no longer the case as shown by a simplerecent analysis [1]. That analysis showed that z3fold does not have anyadvantage over zsmalloc or zbud considering both performance and memoryusage. In a kernel build test on tmpfs in a limited cgroup, z3fold took3% more time and used 1.8% more memory. The latency of zswap_load() was7% higher, and that of zswap_store() was 10% higher. Zsmalloc is betterin all metrics.Moreover, z3fold apparently has latent bugs, which was made noticeable bya recent soft lockup bug report with z3fold [2]. Switching to zsmallocnot only fixed the problem, but also reduced the swap usage from 6~8G to1~2G. Other users have also reported being bitten by mistakenly enablingz3fold.Other than hurting users, z3fold is repeatedly causing wasted engineeringeffort. Apart from investigating the above bug, it came up in multipledevelopment discussions (e.g. [3]) as something we need to handle, whenthere aren't any legit users (at least not intentionally).The natural course of action is to deprecate z3fold, and remove in a fewcycles if no objections are raised from active users. Next on the listshould be zbud, as it offers marginal latency gains at the cost of hugememory waste when compared to zsmalloc. That one will need to wait untilzsmalloc does not depend on MMU.Rename the user-visible config option from CONFIG_Z3FOLD toCONFIG_Z3FOLD_DEPRECATED so that users with CONFIG_Z3FOLD=y get a newprompt with explanation during make oldconfig. Also, removeCONFIG_Z3FOLD=y from defconfigs.[1]https://lore.kernel.org/lkml/CAJD7tkbRF6od-2x_L8-A1QL3=2Ww13sCj4S3i4bNndqF+3+_Vg@mail.gmail.com/[2]https://lore.kernel.org/lkml/EF0ABD3E-A239-4111-A8AB-5C442E759CF3@gmail.com/[3]https://lore.kernel.org/lkml/CAJD7tkbnmeVugfunffSovJf9FAgy9rhBVt_tx=nxUveLUfqVsA@mail.gmail.com/[arnd@arndb.de: deprecate ZSWAP_ZPOOL_DEFAULT_Z3FOLD as well] Link: https://lkml.kernel.org/r/20240909202625.1054880-1-arnd@kernel.orgLink: https://lkml.kernel.org/r/20240904233343.933462-1-yosryahmed@google.comSigned-off-by: Yosry Ahmed <yosryahmed@google.com>Signed-off-by: Arnd Bergmann <arnd@arndb.de>Acked-by: Chris Down <chris@chrisdown.name>Acked-by: Nhat Pham <nphamcs@gmail.com>Acked-by: Johannes Weiner <hannes@cmpxchg.org>Acked-by: Vitaly Wool <vitaly.wool@konsulko.com>Acked-by: Christoph Hellwig <hch@lst.de>Cc: Aneesh Kumar K.V <aneesh.kumar@kernel.org>Cc: Christophe Leroy <christophe.leroy@csgroup.eu>Cc: Huacai Chen <chenhuacai@kernel.org>Cc: Miaohe Lin <linmiaohe@huawei.com>Cc: Michael Ellerman <mpe@ellerman.id.au>Cc: Naveen N. Rao <naveen.n.rao@linux.ibm.com>Cc: Nicholas Piggin <npiggin@gmail.com>Cc: Sergey Senozhatsky <senozhatsky@chromium.org>Cc: WANG Xuerui <kernel@xen0n.name>Cc: <stable@vger.kernel.org>Signed-off-by: Andrew Morton <akpm@linux-foundation.org>(cherry picked from commit 7a2369b74abf76cd3e54c45b30f6addb497f831b)Signed-off-by: Sasha Levin <sashal@kernel.org>
show more ...
LoongArch: Update Loongson-3 default config file1, Enable LSX and LASX.2, Enable KASLR (CONFIG_RANDOMIZE_BASE).3, Enable jump label (patching mechanism for static key).4, Enable LoongArch CRC32(
LoongArch: Update Loongson-3 default config file1, Enable LSX and LASX.2, Enable KASLR (CONFIG_RANDOMIZE_BASE).3, Enable jump label (patching mechanism for static key).4, Enable LoongArch CRC32(c) Acceleration.5, Enable Loongson-specific drivers: I2C/RTC/DRM/SOC/CLK/PINCTRL/GPIO/SPI.6, Enable EXFAT/NTFS3/JFS/GFS2/OCFS2/UBIFS/EROFS/CEPH file systems.7, Enable WangXun NGBE/TXGBE NIC drivers.8, Enable some IPVS options.9, Remove CONFIG_SYSFS_DEPRECATED since it is removed in Kconfig.10, Remove CONFIG_IP_NF_TARGET_CLUSTERIP since it is removed in Kconfig.11, Remove CONFIG_NFT_OBJREF since it is removed in Kconfig.12, Remove CONFIG_R8188EU since it is replaced by CONFIG_RTL8XXXU.Signed-off-by: Trevor Woerner <twoerner@gmail.com>Signed-off-by: Xuewen Wang <wangxuewen@kylinos.cn>Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
arch/*/configs/*defconfig: Replace AUTOFS4_FS by AUTOFS_FSCommit a2225d931f75 ("autofs: remove left-over autofs4 stubs")promised the removal of the fs/autofs/Kconfig fragment for AUTOFS4_FSwithin
arch/*/configs/*defconfig: Replace AUTOFS4_FS by AUTOFS_FSCommit a2225d931f75 ("autofs: remove left-over autofs4 stubs")promised the removal of the fs/autofs/Kconfig fragment for AUTOFS4_FSwithin a couple of releases, but five years later this still has nothappened yet, and AUTOFS4_FS is still enabled in 63 defconfigs.Get rid of it mechanically: git grep -l CONFIG_AUTOFS4_FS -- '*defconfig' | xargs sed -i 's/AUTOFS4_FS/AUTOFS_FS/'Also just remove the AUTOFS4_FS config option stub. Anybody who hasn'tregenerated their config file in the last five years will need to justget the new name right when they do.Signed-off-by: Sven Joachim <svenjoac@gmx.de>Acked-by: Ian Kent <raven@themaw.net>Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
ixgb: Remove ixgb driverThere are likely no users of this driver as the hardware has beendiscontinued since 2010. Remove the driver and all references to itin documentation.Suggested-by: Jakub
ixgb: Remove ixgb driverThere are likely no users of this driver as the hardware has beendiscontinued since 2010. Remove the driver and all references to itin documentation.Suggested-by: Jakub Kicinski <kuba@kernel.org>Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>Acked-by: Jesse Brandeburg <jesse.brandeburg@intel.com>Signed-off-by: David S. Miller <davem@davemloft.net>
LoongArch: kdump: Add single kernel image implementationThis feature depends on the kernel being relocatable.Enable using single kernel image for kdump, and then no longer need tobuild two kerne
LoongArch: kdump: Add single kernel image implementationThis feature depends on the kernel being relocatable.Enable using single kernel image for kdump, and then no longer need tobuild two kernels (production kernel and capture kernel share a singlekernel image).Also enable CONFIG_CRASH_DUMP in loongson3_defconfig.Signed-off-by: Youling Tang <tangyouling@loongson.cn>Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
LoongArch: Update Loongson-3 default config file1, Enable suspend (ACPI S3) and hibernation (ACPI S4).2, Enable some options for FDT-based systems (e.g., SERIAL_OF_PLATFORM).3, Enable CONFIG_KALL
LoongArch: Update Loongson-3 default config file1, Enable suspend (ACPI S3) and hibernation (ACPI S4).2, Enable some options for FDT-based systems (e.g., SERIAL_OF_PLATFORM).3, Enable CONFIG_KALLSYMS_ALL and CONFIG_DEBUG_FS to convenient ftrace.4, Regenerate the whole file to keep the order of options be the same as the latest source code.Signed-off-by: Qing Zhang <zhangqing@loongson.cn>Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
LoongArch: Update Loongson-3 default config file1, Enable ZBOOT, KEXEC and BPF_JIT;2, Add more patition types;3, Add some USB Type-C options;4, Add some common network options;5, Add some Bluet
LoongArch: Update Loongson-3 default config file1, Enable ZBOOT, KEXEC and BPF_JIT;2, Add more patition types;3, Add some USB Type-C options;4, Add some common network options;5, Add some Bluetooth device drivers;6, Remove obsolete config options (for some detailed information, see Link).Link: https://lore.kernel.org/kernel-janitors/20220929090645.1389-1-lukas.bulwahn@gmail.com/Co-developed-by: Tiezhu Yang <yangtiezhu@loongson.cn>Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>Co-developed-by: Youling Tang <tangyouling@loongson.cn>Signed-off-by: Youling Tang <tangyouling@loongson.cn>Co-developed-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
LoongArch: Update Loongson-3 default config file1, Add NVME related options;2, Add compressed firmware support;3, Add virtio drivers in order to run in qemu.Signed-off-by: Huacai Chen <chenhuac
LoongArch: Update Loongson-3 default config file1, Add NVME related options;2, Add compressed firmware support;3, Add virtio drivers in order to run in qemu.Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
LoongArch: Add Loongson-3 default config fileAdd a default config file for LoongArch-based Loongson-3 platform.Reviewed-by: WANG Xuerui <git@xen0n.name>Reviewed-by: Jiaxun Yang <jiaxun.yang@flyg
LoongArch: Add Loongson-3 default config fileAdd a default config file for LoongArch-based Loongson-3 platform.Reviewed-by: WANG Xuerui <git@xen0n.name>Reviewed-by: Jiaxun Yang <jiaxun.yang@flygoat.com>Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>