* Re: [PATCH v3 5/6] mm/slab: Support disabling KMALLOC_PARTITION_CACHES at boot
[not found] <9a4caff0336c78a7adc746786c81c9c01f89c40b.1794506262.git.chris@chrisdown.name>
@ 2026-11-13 19:42 ` kernel test robot
2026-11-13 21:38 ` kernel test robot
1 sibling, 0 replies; 2+ messages in thread
From: kernel test robot @ 2026-11-13 19:42 UTC (permalink / raw)
To: Chris Down, Vlastimil Babka, Harry Yoo, Andrew Morton
Cc: llvm, oe-kbuild-all, Linux Memory Management List, Hao Li,
Christoph Lameter, David Rientjes, Roman Gushchin, Kees Cook,
Marco Elver, GONG Ruiqi, Jonathan Corbet, linux-hardening,
linux-doc, linux-kernel, kernel-team
Hi Chris,
kernel test robot noticed the following build warnings:
[auto build test WARNING on ce6518e61e3b4bf4f97f7ac6204049b9eba7eb75]
url: https://github.com/intel-lab-lkp/linux/commits/Chris-Down/mm-slab-Enable-SLAB_FREELIST_HARDENED-by-default/20261113-005125
base: ce6518e61e3b4bf4f97f7ac6204049b9eba7eb75
patch link: https://lore.kernel.org/r/9a4caff0336c78a7adc746786c81c9c01f89c40b.1794506262.git.chris%40chrisdown.name
patch subject: [PATCH v3 5/6] mm/slab: Support disabling KMALLOC_PARTITION_CACHES at boot
config: hexagon-allnoconfig (https://download.01.org/0day-ci/archive/20261114/202611140317.3kXloW0R-lkp@intel.com/config)
compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project 1b1fed44d3dcca649a9877915d57c3357a98124e)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20261114/202611140317.3kXloW0R-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202611140317.3kXloW0R-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> mm/slab_common.c:1029:44: warning: non-overlapping comparisons always evaluate to false [-Wtautological-overlap-compare]
1029 | } else if (type > KMALLOC_PARTITION_START && type <= KMALLOC_PARTITION_END) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
vim +1029 mm/slab_common.c
999
1000 static void __init
1001 new_kmalloc_cache(int idx, enum kmalloc_cache_type type)
1002 {
1003 slab_flags_t flags = 0;
1004 unsigned int minalign = __kmalloc_minalign();
1005 unsigned int aligned_size = kmalloc_info[idx].size;
1006 int aligned_idx = idx;
1007
1008 if ((KMALLOC_RECLAIM != KMALLOC_NORMAL) && (type == KMALLOC_RECLAIM)) {
1009 flags |= SLAB_RECLAIM_ACCOUNT;
1010 } else if (IS_ENABLED(CONFIG_MEMCG) && (type == KMALLOC_CGROUP)) {
1011 if (mem_cgroup_kmem_disabled()) {
1012 kmalloc_caches[type][idx] = kmalloc_caches[KMALLOC_NORMAL][idx];
1013 return;
1014 }
1015 flags |= SLAB_ACCOUNT;
1016 } else if (IS_ENABLED(CONFIG_SLAB_OBJ_EXT) && type == KMALLOC_NO_OBJ_EXT) {
1017 if (!need_kmalloc_no_objext()) {
1018 kmalloc_caches[type][idx] = kmalloc_caches[KMALLOC_NORMAL][idx];
1019 return;
1020 }
1021 flags |= SLAB_NO_OBJ_EXT | SLAB_NO_MERGE;
1022 } else if (IS_ENABLED(CONFIG_ZONE_DMA) && (type == KMALLOC_DMA)) {
1023 flags |= SLAB_CACHE_DMA;
1024 }
1025
1026 if (kmalloc_partition_enabled) {
1027 if (type >= KMALLOC_PARTITION_START && type <= KMALLOC_PARTITION_END)
1028 flags |= SLAB_NO_MERGE;
> 1029 } else if (type > KMALLOC_PARTITION_START && type <= KMALLOC_PARTITION_END) {
1030 /* Use the normal caches, which have already been created. */
1031 kmalloc_caches[type][idx] = kmalloc_caches[KMALLOC_NORMAL][idx];
1032 return;
1033 }
1034
1035 /*
1036 * If memcg_kmem is enabled and this is a KMALLOC_NORMAL cache and not
1037 * aliased with any other type, make sure it's never merged with any other
1038 * cache.
1039 *
1040 * In other cases the kmalloc cache may end up being used for a
1041 * __GFP_ACCOUNT allocation so mark it as such. The exception is a
1042 * KMALLOC_NO_OBJ_EXT cache.
1043 */
1044 if (!mem_cgroup_kmem_disabled()) {
1045 if (type == KMALLOC_NORMAL && KMALLOC_RECLAIM != KMALLOC_NORMAL)
1046 flags |= SLAB_NO_MERGE;
1047 else if (!(flags & SLAB_NO_OBJ_EXT))
1048 flags |= SLAB_MAY_ACCOUNT;
1049 }
1050
1051 if (minalign > ARCH_KMALLOC_MINALIGN) {
1052 aligned_size = ALIGN(aligned_size, minalign);
1053 aligned_idx = __kmalloc_index(aligned_size, false);
1054 }
1055
1056 if (!kmalloc_caches[type][aligned_idx])
1057 kmalloc_caches[type][aligned_idx] = create_kmalloc_cache(
1058 kmalloc_info[aligned_idx].name[type],
1059 aligned_size, flags);
1060 if (idx != aligned_idx)
1061 kmalloc_caches[type][idx] = kmalloc_caches[type][aligned_idx];
1062 }
1063
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH v3 5/6] mm/slab: Support disabling KMALLOC_PARTITION_CACHES at boot
[not found] <9a4caff0336c78a7adc746786c81c9c01f89c40b.1794506262.git.chris@chrisdown.name>
2026-11-13 19:42 ` [PATCH v3 5/6] mm/slab: Support disabling KMALLOC_PARTITION_CACHES at boot kernel test robot
@ 2026-11-13 21:38 ` kernel test robot
1 sibling, 0 replies; 2+ messages in thread
From: kernel test robot @ 2026-11-13 21:38 UTC (permalink / raw)
To: Chris Down, Vlastimil Babka, Harry Yoo, Andrew Morton
Cc: llvm, oe-kbuild-all, Linux Memory Management List, Hao Li,
Christoph Lameter, David Rientjes, Roman Gushchin, Kees Cook,
Marco Elver, GONG Ruiqi, Jonathan Corbet, linux-hardening,
linux-doc, linux-kernel, kernel-team
Hi Chris,
kernel test robot noticed the following build warnings:
[auto build test WARNING on ce6518e61e3b4bf4f97f7ac6204049b9eba7eb75]
url: https://github.com/intel-lab-lkp/linux/commits/Chris-Down/mm-slab-Enable-SLAB_FREELIST_HARDENED-by-default/20261113-005125
base: ce6518e61e3b4bf4f97f7ac6204049b9eba7eb75
patch link: https://lore.kernel.org/r/9a4caff0336c78a7adc746786c81c9c01f89c40b.1794506262.git.chris%40chrisdown.name
patch subject: [PATCH v3 5/6] mm/slab: Support disabling KMALLOC_PARTITION_CACHES at boot
config: arm-allnoconfig (https://download.01.org/0day-ci/archive/20261114/202611140551.XAyf9KWi-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20261114/202611140551.XAyf9KWi-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202611140551.XAyf9KWi-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> mm/slab_common.c:1029:44: warning: overlapping comparisons always evaluate to false [-Wtautological-overlap-compare]
1029 | } else if (type > KMALLOC_PARTITION_START && type <= KMALLOC_PARTITION_END) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
vim +1029 mm/slab_common.c
999
1000 static void __init
1001 new_kmalloc_cache(int idx, enum kmalloc_cache_type type)
1002 {
1003 slab_flags_t flags = 0;
1004 unsigned int minalign = __kmalloc_minalign();
1005 unsigned int aligned_size = kmalloc_info[idx].size;
1006 int aligned_idx = idx;
1007
1008 if ((KMALLOC_RECLAIM != KMALLOC_NORMAL) && (type == KMALLOC_RECLAIM)) {
1009 flags |= SLAB_RECLAIM_ACCOUNT;
1010 } else if (IS_ENABLED(CONFIG_MEMCG) && (type == KMALLOC_CGROUP)) {
1011 if (mem_cgroup_kmem_disabled()) {
1012 kmalloc_caches[type][idx] = kmalloc_caches[KMALLOC_NORMAL][idx];
1013 return;
1014 }
1015 flags |= SLAB_ACCOUNT;
1016 } else if (IS_ENABLED(CONFIG_SLAB_OBJ_EXT) && type == KMALLOC_NO_OBJ_EXT) {
1017 if (!need_kmalloc_no_objext()) {
1018 kmalloc_caches[type][idx] = kmalloc_caches[KMALLOC_NORMAL][idx];
1019 return;
1020 }
1021 flags |= SLAB_NO_OBJ_EXT | SLAB_NO_MERGE;
1022 } else if (IS_ENABLED(CONFIG_ZONE_DMA) && (type == KMALLOC_DMA)) {
1023 flags |= SLAB_CACHE_DMA;
1024 }
1025
1026 if (kmalloc_partition_enabled) {
1027 if (type >= KMALLOC_PARTITION_START && type <= KMALLOC_PARTITION_END)
1028 flags |= SLAB_NO_MERGE;
> 1029 } else if (type > KMALLOC_PARTITION_START && type <= KMALLOC_PARTITION_END) {
1030 /* Use the normal caches, which have already been created. */
1031 kmalloc_caches[type][idx] = kmalloc_caches[KMALLOC_NORMAL][idx];
1032 return;
1033 }
1034
1035 /*
1036 * If memcg_kmem is enabled and this is a KMALLOC_NORMAL cache and not
1037 * aliased with any other type, make sure it's never merged with any other
1038 * cache.
1039 *
1040 * In other cases the kmalloc cache may end up being used for a
1041 * __GFP_ACCOUNT allocation so mark it as such. The exception is a
1042 * KMALLOC_NO_OBJ_EXT cache.
1043 */
1044 if (!mem_cgroup_kmem_disabled()) {
1045 if (type == KMALLOC_NORMAL && KMALLOC_RECLAIM != KMALLOC_NORMAL)
1046 flags |= SLAB_NO_MERGE;
1047 else if (!(flags & SLAB_NO_OBJ_EXT))
1048 flags |= SLAB_MAY_ACCOUNT;
1049 }
1050
1051 if (minalign > ARCH_KMALLOC_MINALIGN) {
1052 aligned_size = ALIGN(aligned_size, minalign);
1053 aligned_idx = __kmalloc_index(aligned_size, false);
1054 }
1055
1056 if (!kmalloc_caches[type][aligned_idx])
1057 kmalloc_caches[type][aligned_idx] = create_kmalloc_cache(
1058 kmalloc_info[aligned_idx].name[type],
1059 aligned_size, flags);
1060 if (idx != aligned_idx)
1061 kmalloc_caches[type][idx] = kmalloc_caches[type][aligned_idx];
1062 }
1063
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-11-13 21:39 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <9a4caff0336c78a7adc746786c81c9c01f89c40b.1794506262.git.chris@chrisdown.name>
2026-11-13 19:42 ` [PATCH v3 5/6] mm/slab: Support disabling KMALLOC_PARTITION_CACHES at boot kernel test robot
2026-11-13 21:38 ` kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox