Messages in this thread | | | Date | Thu, 5 Oct 2017 07:40:51 +0800 | From | kbuild test robot <> | Subject | [rcu:rcu/next 31/31] kernel/rcu/tree.c:764:75: error: macro "trace_rcu_dyntick" passed 4 arguments, but takes just 3 |
| |
tree: https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git rcu/next head: ff423bbbe3d93b15a89d14de24a90937814cda16 commit: ff423bbbe3d93b15a89d14de24a90937814cda16 [31/31] rcu: Add ->dynticks field to rcu_dyntick trace event config: i386-randconfig-x001-201740 (attached as .config) compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901 reproduce: git checkout ff423bbbe3d93b15a89d14de24a90937814cda16 # save the attached .config to linux build tree make ARCH=i386
All errors (new ones prefixed by >>):
kernel/rcu/tree.c: In function 'rcu_eqs_enter_common': >> kernel/rcu/tree.c:764:75: error: macro "trace_rcu_dyntick" passed 4 arguments, but takes just 3 trace_rcu_dyntick(TPS("Start"), rdtp->dynticks_nesting, 0, rdtp->dynticks); ^ >> kernel/rcu/tree.c:764:2: error: 'trace_rcu_dyntick' undeclared (first use in this function) trace_rcu_dyntick(TPS("Start"), rdtp->dynticks_nesting, 0, rdtp->dynticks); ^~~~~~~~~~~~~~~~~ kernel/rcu/tree.c:764:2: note: each undeclared identifier is reported only once for each function it appears in kernel/rcu/tree.c:770:100: error: macro "trace_rcu_dyntick" passed 4 arguments, but takes just 3 trace_rcu_dyntick(TPS("Error on entry: not idle task"), rdtp->dynticks_nesting, 0, rdtp->dynticks); ^ kernel/rcu/tree.c: In function 'rcu_nmi_exit': kernel/rcu/tree.c:883:107: error: macro "trace_rcu_dyntick" passed 4 arguments, but takes just 3 trace_rcu_dyntick(TPS("--="), rdtp->dynticks_nmi_nesting, rdtp->dynticks_nmi_nesting - 2, rdtp->dynticks); ^ kernel/rcu/tree.c:883:3: error: 'trace_rcu_dyntick' undeclared (first use in this function) trace_rcu_dyntick(TPS("--="), rdtp->dynticks_nmi_nesting, rdtp->dynticks_nmi_nesting - 2, rdtp->dynticks); ^~~~~~~~~~~~~~~~~ kernel/rcu/tree.c:890:82: error: macro "trace_rcu_dyntick" passed 4 arguments, but takes just 3 trace_rcu_dyntick(TPS("Startirq"), rdtp->dynticks_nmi_nesting, 0, rdtp->dynticks); ^ kernel/rcu/tree.c: In function 'rcu_eqs_exit_common': kernel/rcu/tree.c:956:78: error: macro "trace_rcu_dyntick" passed 4 arguments, but takes just 3 trace_rcu_dyntick(TPS("End"), rdtp->dynticks_nesting, newval, rdtp->dynticks); ^ kernel/rcu/tree.c:956:2: error: 'trace_rcu_dyntick' undeclared (first use in this function) trace_rcu_dyntick(TPS("End"), rdtp->dynticks_nesting, newval, rdtp->dynticks); ^~~~~~~~~~~~~~~~~ kernel/rcu/tree.c:962:104: error: macro "trace_rcu_dyntick" passed 4 arguments, but takes just 3 trace_rcu_dyntick(TPS("Error on exit: not idle task"), rdtp->dynticks_nesting, newval, rdtp->dynticks); ^ kernel/rcu/tree.c: In function 'rcu_nmi_enter': kernel/rcu/tree.c:1064:56: error: macro "trace_rcu_dyntick" passed 4 arguments, but takes just 3 rdtp->dynticks_nmi_nesting + incby, rdtp->dynticks); ^ kernel/rcu/tree.c:1062:2: error: 'trace_rcu_dyntick' undeclared (first use in this function) trace_rcu_dyntick(incby == 1 ? TPS("Endirq") : TPS("++="), ^~~~~~~~~~~~~~~~~
vim +/trace_rcu_dyntick +764 kernel/rcu/tree.c
750 751 /* 752 * rcu_eqs_enter_common - current CPU is entering an extended quiescent state 753 * 754 * Enter idle, doing appropriate accounting. The caller must have 755 * disabled interrupts. 756 */ 757 static void rcu_eqs_enter_common(bool user) 758 { 759 struct rcu_state *rsp; 760 struct rcu_data *rdp; 761 struct rcu_dynticks *rdtp = this_cpu_ptr(&rcu_dynticks); 762 763 RCU_LOCKDEP_WARN(!irqs_disabled(), "rcu_eqs_enter_common() invoked with irqs enabled!!!"); > 764 trace_rcu_dyntick(TPS("Start"), rdtp->dynticks_nesting, 0, rdtp->dynticks); 765 if (IS_ENABLED(CONFIG_RCU_EQS_DEBUG) && 766 !user && !is_idle_task(current)) { 767 struct task_struct *idle __maybe_unused = 768 idle_task(smp_processor_id()); 769 770 trace_rcu_dyntick(TPS("Error on entry: not idle task"), rdtp->dynticks_nesting, 0, rdtp->dynticks); 771 rcu_ftrace_dump(DUMP_ORIG); 772 WARN_ONCE(1, "Current pid: %d comm: %s / Idle pid: %d comm: %s", 773 current->pid, current->comm, 774 idle->pid, idle->comm); /* must be idle task! */ 775 } 776 for_each_rcu_flavor(rsp) { 777 rdp = this_cpu_ptr(rsp->rda); 778 do_nocb_deferred_wakeup(rdp); 779 } 780 rcu_prepare_for_idle(); 781 rdtp->dynticks_nesting = 0; 782 rcu_dynticks_eqs_enter(); 783 rcu_dynticks_task_enter(); 784 785 /* 786 * It is illegal to enter an extended quiescent state while 787 * in an RCU read-side critical section. 788 */ 789 RCU_LOCKDEP_WARN(lock_is_held(&rcu_lock_map), 790 "Illegal idle entry in RCU read-side critical section."); 791 RCU_LOCKDEP_WARN(lock_is_held(&rcu_bh_lock_map), 792 "Illegal idle entry in RCU-bh read-side critical section."); 793 RCU_LOCKDEP_WARN(lock_is_held(&rcu_sched_lock_map), 794 "Illegal idle entry in RCU-sched read-side critical section."); 795 } 796
--- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation [unhandled content-type:application/gzip] | |