2.6.20-rc6-mm2 build failure
I try to compile and got:
CHK include/linux/version.h CHK include/linux/utsrelease.h CHK include/linux/compile.h CC kernel/rcupreempt.o
kernel/rcupreempt.c: In function 'rcupreempt_try_flip_state_name':kernel/rcupreempt.c:641: error: 'rcu_try_flip_state_names' undeclared (first use in this function)kernel/rcupreempt.c:641: error: (Each undeclared identifier is reported only oncekernel/rcupreempt.c:641: error: for each function it appears in.) kernel/rcupreempt.c: In function 'rcupreempt_trace':kernel/rcupreempt.c:645: error: 'struct rcu_data' has no member named 'trace' kernel/rcupreempt.c:646: warning: control reaches end of non-void function kernel/rcupreempt.c: In function 'rcupreempt_try_flip_state_name':kernel/rcupreempt.c:642: warning: control reaches end of non-void function
config in attachment.
PATCH 1/1 rcu_trace build fix (was Re: 2.6.20-rc6-mm2 build failure)
Quoted 6 lines · Tomasz Kvarsin
I try to compile and got:
CHK include/linux/version.h CHK include/linux/utsrelease.h CHK include/linux/compile.h CC kernel/rcupreempt.o
Quoted 12 lines
kernel/rcupreempt.c: In function 'rcupreempt_try_flip_state_name':kernel/rcupreempt.c:641: error: 'rcu_try_flip_state_names' undeclared (first use in this function)kernel/rcupreempt.c:641: error: (Each undeclared identifier is reported only oncekernel/rcupreempt.c:641: error: for each function it appears in.)kernel/rcupreempt.c: In function 'rcupreempt_trace':kernel/rcupreempt.c:645: error: 'structrcu_data' has no member named 'trace'kernel/rcupreempt.c:646: warning: control reaches end of non-void functionkernel/rcupreempt.c: In function 'rcupreempt_try_flip_state_name':kernel/rcupreempt.c:642: warning: control reaches end of non-void function
Hi,
It looks like a typo there, thanks for reporting. The attached patch "s/RCU_TRACE/CONFIG_RCU_TRACE/" did the trick for me.
Btw, shouldn't the RCU_TRACE macro be defined to "do {} while(0)" in the !CONFIG_RCU_TRACE case?
Regards,
Frederik
kernel/rcupreempt.c +2 -2
@@ -619,7 +619,7 @@ void synchronize_kernel(void)synchronize_rcu (); } -#ifdef RCU_TRACE +#ifdef CONFIG_RCU_TRACE int *rcupreempt_flipctr (int cpu) {return &per_cpu (rcu_flipctr, cpu)[0 ];
@@ -649,7 +649,7 @@ EXPORT_SYMBOL_GPL(rcupreempt_data_completed);EXPORT_SYMBOL_GPL (rcupreempt_flip_flag);EXPORT_SYMBOL_GPL (rcupreempt_mb_flag);EXPORT_SYMBOL_GPL (rcupreempt_try_flip_state_name); -#endif /* #ifdef RCU_TRACE */ +#endif /* #ifdef CONFIG_RCU_TRACE */ EXPORT_SYMBOL_GPL (call_rcu);EXPORT_SYMBOL_GPL (rcu_batches_completed);
Re: [-mm patch] rcu_trace build fix (was Re: 2.6.20-rc6-mm2 build failure)
Quoted 20 lines · Frederik Deweerdt
Quoted 1 line · Tomasz Kvarsin
I try to compile and got:
Frederik
Signed-off-by Frederik Deweerdt <[email protected]>kernel/rcupreempt.c +1
-1@@ -619,7 +619,7 @@ void synchronize_kernel(void)synchronize_rcu (); } -#ifdef RCU_TRACE +#ifdef CONFIG_RCU_TRACE int *rcupreempt_flipctr (int cpu) {return &per_cpu (rcu_flipctr, cpu)[0 ];
kernel/rcupreempt.c EXPORT_SYMBOL_GPL(rcupreempt_data_completed); · line 655
Quoted 8 lines
kernel/rcupreempt.c +1
-1@@ -649,7 +649,7 @@ EXPORT_SYMBOL_GPL(rcupreempt_data_completed);EXPORT_SYMBOL_GPL (rcupreempt_flip_flag);EXPORT_SYMBOL_GPL (rcupreempt_mb_flag);EXPORT_SYMBOL_GPL (rcupreempt_try_flip_state_name); -#endif /* #ifdef RCU_TRACE */ +#endif /* #ifdef CONFIG_RCU_TRACE */ EXPORT_SYMBOL_GPL (call_rcu);EXPORT_SYMBOL_GPL (rcu_batches_completed);
Looks good. Sorry about missing this and the late response. I am online only periodically while I am out of town (until 10th Feb).
Thanks
Dipankar