>> I still can't reproduce this :( >> >>> This fixes the build error for me when CONFIG_PSI=n. >> >> I have CONFIG_PSI=n > > There was also this report about linux-next, also with CONFIG_PSI=n: > > https://lore.kernel.org/all/EF33D230-9A8F-41C5-A38D-95128603224F@xxxxxxxxxxxxx/ Yes, I can still recreate this build error (against 5.17.0-rc8-next-20220317) CC kernel/sched/fair.o In file included from ./arch/powerpc/include/generated/asm/rwonce.h:1, from ./include/linux/compiler.h:248, from ./include/linux/kernel.h:20, from ./include/linux/cpumask.h:10, from ./include/linux/energy_model.h:4, from kernel/sched/fair.c:23: ./include/linux/psi.h: In function 'cgroup_move_task': ./include/linux/rcupdate.h:414:36: error: dereferencing pointer to incomplete type 'struct css_set' #define RCU_INITIALIZER(v) (typeof(*(v)) __force __rcu *)(v) ^~~~ ./include/asm-generic/rwonce.h:55:33: note: in definition of macro '__WRITE_ONC' *(volatile typeof(x) *)&(x) = (val); \ ^~~ ./arch/powerpc/include/asm/barrier.h:74:2: note: in expansion of macro 'WRITE_ONCE' WRITE_ONCE(*p, v); \ ^~~~~~~~~~ ./include/asm-generic/barrier.h:164:55: note: in expansion of macro '__smp_store_release' #define smp_store_release(p, v) do { kcsan_release(); __smp_store_release(p, v); } while (0) ^~~~~~~~~~~~~~~~~~~ ./include/linux/rcupdate.h:455:3: note: in expansion of macro 'smp_store_releas' smp_store_release(&p, RCU_INITIALIZER((typeof(p))_r_a_p__v)); \ ^~~~~~~~~~~~~~~~~ ./include/linux/rcupdate.h:455:25: note: in expansion of macro 'RCU_INITIALIZER' smp_store_release(&p, RCU_INITIALIZER((typeof(p))_r_a_p__v)); \ ^~~~~~~~~~~~~~~ ./include/linux/psi.h:58:2: note: in expansion of macro 'rcu_assign_pointer' rcu_assign_pointer(p->cgroups, to); ^~~~~~~~~~~~~~~~~~ make[2]: *** [scripts/Makefile.build:310: kernel/sched/fair.o] Error 1 make[1]: *** [scripts/Makefile.build:638: kernel/sched] Error 2 make: *** [Makefile:1991: kernel] Error 2 As mentioned by Randy, this build break was introduced in next-20220316. Git bisect points to: commit c4ad6fcb67c42d65481c85733c8009c8afdfdf4e (refs/bisect/bad) sched/headers: Reorganize, clean up and optimize kernel/sched/fair.c dependencies The change suggested by Randy works for me. I have attached .config for reference. -Sachin
Attachment:
config_next.gz
Description: GNU Zip compressed data