linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
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