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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.