Today’s next (5.17.0-rc8-next-20220317) fails to build on powerpc
with following error:
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:309: kernel/sched/fair.o] Error 1
make[1]: *** [scripts/Makefile.build:578: kernel/sched] Error 2
make: *** [Makefile:1834: kernel] Error 2
Git bisect points to:
commit c4ad6fcb67c42d65481c85733c8009c8afdfdf4e (refs/bisect/bad)
sched/headers: Reorganize, clean up and optimize kernel/sched/fair.c dependencies
I have attached .config
Thanks
-Sachin
On 3/17/22 03:35, Sachin Sant wrote:
> Today’s next (5.17.0-rc8-next-20220317) fails to build on powerpc
> with following error:
>
> 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:309: kernel/sched/fair.o] Error 1
> make[1]: *** [scripts/Makefile.build:578: kernel/sched] Error 2
> make: *** [Makefile:1834: kernel] Error 2
>
> Git bisect points to:
>
> commit c4ad6fcb67c42d65481c85733c8009c8afdfdf4e (refs/bisect/bad)
> sched/headers: Reorganize, clean up and optimize kernel/sched/fair.c dependencies
>
> I have attached .config
Here is a fix for the CONFIG_PSI=n build error:
https://lore.kernel.org/lkml/[email protected]/
--
~Randy