After commit with cpumask optimization https://github.com/torvalds/linux/commit/596ff4a09b8981790e15572e8e7bc904df5835e7 initialization process for per-cpu allocator stops with assert.
I've reproduced this issue on HSDK board and on nSIM.
After the patch in the pcpu_build_alloc_info() function I see broken loop, that fills group_cnt array incorrectly and as a result assert fails.
I guess, the reason may not be in the patch itself, but in compiler optimizations for the loop. Furthered analysis is required.
Linux kernel version from 6.3 doesn't boot in SMP configuration because of assert.
After commit with cpumask optimization https://github.com/torvalds/linux/commit/596ff4a09b8981790e15572e8e7bc904df5835e7 initialization process for per-cpu allocator stops with assert. I've reproduced this issue on HSDK board and on nSIM. After the patch in the
pcpu_build_alloc_info()
function I see broken loop, that fillsgroup_cnt
array incorrectly and as a result assert fails. I guess, the reason may not be in the patch itself, but in compiler optimizations for the loop. Furthered analysis is required.