From: kernel test robot <lkp@intel.com>
To: "Paul E. McKenney" <paulmck@kernel.org>
Cc: oe-kbuild-all@lists.linux.dev,
Linux Memory Management List <linux-mm@kvack.org>,
Neeraj Upadhyay <neeraj.upadhyay@kernel.org>
Subject: [linux-next:master 1554/4667] kernel/rcu/tree_exp.h:556: undefined reference to `csd_lock_is_stuck'
Date: Thu, 15 Aug 2024 04:27:41 +0800 [thread overview]
Message-ID: <202408150404.3k8APQJr-lkp@intel.com> (raw)
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 320eb81df4f6c1a1814fd02ebb4ba41eb80a3c7e
commit: 88ae4291a83a03811076b01fcd0b59d296c0176d [1554/4667] rcu: Summarize expedited RCU CPU stall warnings during CSD-lock stalls
config: x86_64-randconfig-013-20240814 (https://download.01.org/0day-ci/archive/20240815/202408150404.3k8APQJr-lkp@intel.com/config)
compiler: gcc-11 (Debian 11.3.0-12) 11.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240815/202408150404.3k8APQJr-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202408150404.3k8APQJr-lkp@intel.com/
All errors (new ones prefixed by >>):
ld: vmlinux.o: in function `synchronize_rcu_expedited_stall':
>> kernel/rcu/tree_exp.h:556: undefined reference to `csd_lock_is_stuck'
ld: vmlinux.o: in function `check_cpu_stall':
kernel/rcu/tree_stall.h:798: undefined reference to `csd_lock_is_stuck'
vim +556 kernel/rcu/tree_exp.h
544
545 /*
546 * Print out an expedited RCU CPU stall warning message.
547 */
548 static void synchronize_rcu_expedited_stall(unsigned long jiffies_start, unsigned long j)
549 {
550 int cpu;
551 unsigned long mask;
552 int ndetected;
553 struct rcu_node *rnp;
554 struct rcu_node *rnp_root = rcu_get_root();
555
> 556 if (READ_ONCE(csd_lock_suppress_rcu_stall) && csd_lock_is_stuck()) {
557 pr_err("INFO: %s detected expedited stalls, but suppressed full report due to a stuck CSD-lock.\n", rcu_state.name);
558 return;
559 }
560 pr_err("INFO: %s detected expedited stalls on CPUs/tasks: {", rcu_state.name);
561 ndetected = 0;
562 rcu_for_each_leaf_node(rnp) {
563 ndetected += rcu_print_task_exp_stall(rnp);
564 for_each_leaf_node_possible_cpu(rnp, cpu) {
565 struct rcu_data *rdp;
566
567 mask = leaf_node_cpu_bit(rnp, cpu);
568 if (!(READ_ONCE(rnp->expmask) & mask))
569 continue;
570 ndetected++;
571 rdp = per_cpu_ptr(&rcu_data, cpu);
572 pr_cont(" %d-%c%c%c%c", cpu,
573 "O."[!!cpu_online(cpu)],
574 "o."[!!(rdp->grpmask & rnp->expmaskinit)],
575 "N."[!!(rdp->grpmask & rnp->expmaskinitnext)],
576 "D."[!!data_race(rdp->cpu_no_qs.b.exp)]);
577 }
578 }
579 pr_cont(" } %lu jiffies s: %lu root: %#lx/%c\n",
580 j - jiffies_start, rcu_state.expedited_sequence, data_race(rnp_root->expmask),
581 ".T"[!!data_race(rnp_root->exp_tasks)]);
582 if (ndetected) {
583 pr_err("blocking rcu_node structures (internal RCU debug):");
584 rcu_for_each_node_breadth_first(rnp) {
585 if (rnp == rnp_root)
586 continue; /* printed unconditionally */
587 if (sync_rcu_exp_done_unlocked(rnp))
588 continue;
589 pr_cont(" l=%u:%d-%d:%#lx/%c",
590 rnp->level, rnp->grplo, rnp->grphi, data_race(rnp->expmask),
591 ".T"[!!data_race(rnp->exp_tasks)]);
592 }
593 pr_cont("\n");
594 }
595 rcu_for_each_leaf_node(rnp) {
596 for_each_leaf_node_possible_cpu(rnp, cpu) {
597 mask = leaf_node_cpu_bit(rnp, cpu);
598 if (!(READ_ONCE(rnp->expmask) & mask))
599 continue;
600 preempt_disable(); // For smp_processor_id() in dump_cpu_task().
601 dump_cpu_task(cpu);
602 preempt_enable();
603 }
604 rcu_exp_print_detail_task_stall_rnp(rnp);
605 }
606 }
607
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
reply other threads:[~2024-08-14 20:28 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202408150404.3k8APQJr-lkp@intel.com \
--to=lkp@intel.com \
--cc=linux-mm@kvack.org \
--cc=neeraj.upadhyay@kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=paulmck@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox