lkml.org 
[lkml]   [2019]   [Mar]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subject[rcu:dev.2019.03.20b 59/83] kernel/rcu/tree_plugin.h:612:8: error: 'rcu_softirq_enabled' undeclared; did you mean 'trace_softirqs_enabled'?
tree:   https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git dev.2019.03.20b
head: 6d4434b4b4df791620743178e1419de882b44c7b
commit: d0f41d341df0520e900cac03de05bbbd11abdcd9 [59/83] rcu: Enable elimination of Tree-RCU softirq processing
config: i386-randconfig-x002-201911 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
git checkout d0f41d341df0520e900cac03de05bbbd11abdcd9
# save the attached .config to linux build tree
make ARCH=i386

Note: the rcu/dev.2019.03.20b HEAD 6d4434b4b4df791620743178e1419de882b44c7b builds fine.
It only hurts bisectibility.

All errors (new ones prefixed by >>):

In file included from kernel/rcu/tree.c:3489:0:
kernel/rcu/tree_plugin.h: In function 'rcu_read_unlock_special':
>> kernel/rcu/tree_plugin.h:612:8: error: 'rcu_softirq_enabled' undeclared (first use in this function); did you mean 'trace_softirqs_enabled'?
if (rcu_softirq_enabled)
^~~~~~~~~~~~~~~~~~~
trace_softirqs_enabled
kernel/rcu/tree_plugin.h:612:8: note: each undeclared identifier is reported only once for each function it appears in

vim +612 kernel/rcu/tree_plugin.h

588
589 /*
590 * Handle special cases during rcu_read_unlock(), such as needing to
591 * notify RCU core processing or task having blocked during the RCU
592 * read-side critical section.
593 */
594 static void rcu_read_unlock_special(struct task_struct *t)
595 {
596 unsigned long flags;
597 bool preempt_bh_were_disabled =
598 !!(preempt_count() & (PREEMPT_MASK | SOFTIRQ_MASK));
599 bool irqs_were_disabled;
600
601 /* NMI handlers cannot block and cannot safely manipulate state. */
602 if (in_nmi())
603 return;
604
605 local_irq_save(flags);
606 irqs_were_disabled = irqs_disabled_flags(flags);
607 if (preempt_bh_were_disabled || irqs_were_disabled) {
608 WRITE_ONCE(t->rcu_read_unlock_special.b.exp_hint, false);
609 /* Need to defer quiescent state until everything is enabled. */
610 if (irqs_were_disabled) {
611 /* Enabling irqs does not reschedule, so... */
> 612 if (rcu_softirq_enabled)
613 raise_softirq_irqoff(RCU_SOFTIRQ);
614 else
615 invoke_rcu_core();
616 } else {
617 /* Enabling BH or preempt does reschedule, so... */
618 set_tsk_need_resched(current);
619 set_preempt_need_resched();
620 }
621 local_irq_restore(flags);
622 return;
623 }
624 WRITE_ONCE(t->rcu_read_unlock_special.b.exp_hint, false);
625 rcu_preempt_deferred_qs_irqrestore(t, flags);
626 }
627

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[unhandled content-type:application/gzip]
\
 
 \ /
  Last update: 2019-03-23 03:18    [W:0.032 / U:1.100 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site