All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Mark Rutland <mark.rutland@arm.com>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev
Subject: [mark:sched/preempt-dynamic-optimizations 1/1] kernel/sched/core.c:7415:13: warning: no previous prototype for function '__cond_resched'
Date: Thu, 26 Feb 2026 04:23:31 +0800	[thread overview]
Message-ID: <202602260409.2GS5AzSo-lkp@intel.com> (raw)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git sched/preempt-dynamic-optimizations
head:   b07713067f078a16fdbf289db10c6f72a7a75aa0
commit: b07713067f078a16fdbf289db10c6f72a7a75aa0 [1/1] HACK: sched: Disable {cond,might}_resched() when ARCH_HAS_PREEMPT_LAZY=y
config: s390-randconfig-001-20260226 (https://download.01.org/0day-ci/archive/20260226/202602260409.2GS5AzSo-lkp@intel.com/config)
compiler: clang version 23.0.0git (https://github.com/llvm/llvm-project 9a109fbb6e184ec9bcce10615949f598f4c974a9)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260226/202602260409.2GS5AzSo-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/202602260409.2GS5AzSo-lkp@intel.com/

All warnings (new ones prefixed by >>):

>> kernel/sched/core.c:7415:13: warning: no previous prototype for function '__cond_resched' [-Wmissing-prototypes]
    7415 | int __sched __cond_resched(void)
         |             ^
   kernel/sched/core.c:7415:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
    7415 | int __sched __cond_resched(void)
         | ^
         | static 
   kernel/sched/core.c:7455:13: warning: no previous prototype for function 'dynamic_cond_resched' [-Wmissing-prototypes]
    7455 | int __sched dynamic_cond_resched(void)
         |             ^
   kernel/sched/core.c:7455:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
    7455 | int __sched dynamic_cond_resched(void)
         | ^
         | static 
>> kernel/sched/core.c:7464:13: warning: no previous prototype for function 'dynamic_might_resched' [-Wmissing-prototypes]
    7464 | int __sched dynamic_might_resched(void)
         |             ^
   kernel/sched/core.c:7464:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
    7464 | int __sched dynamic_might_resched(void)
         | ^
         | static 
   3 warnings generated.


vim +/__cond_resched +7415 kernel/sched/core.c

d50dde5a10f305 kernel/sched/core.c Dario Faggioli     2013-11-07  7413  
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7414  #if !defined(CONFIG_PREEMPTION) || defined(CONFIG_PREEMPT_DYNAMIC)
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07 @7415  int __sched __cond_resched(void)
^1da177e4c3f41 kernel/sched.c      Linus Torvalds     2005-04-16  7416  {
82c387ef7568c0 kernel/sched/core.c Thomas Gleixner    2024-12-16  7417  	if (should_resched(0) && !irqs_disabled()) {
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7418  		preempt_schedule_common();
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7419  		return 1;
^1da177e4c3f41 kernel/sched.c      Linus Torvalds     2005-04-16  7420  	}
^1da177e4c3f41 kernel/sched.c      Linus Torvalds     2005-04-16  7421  	/*
2c00e1199c0608 kernel/sched/core.c Ankur Arora        2024-12-12  7422  	 * In PREEMPT_RCU kernels, ->rcu_read_lock_nesting tells the tick
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7423  	 * whether the current CPU is in an RCU read-side critical section,
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7424  	 * so the tick can report quiescent states even for CPUs looping
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7425  	 * in kernel context.  In contrast, in non-preemptible kernels,
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7426  	 * RCU readers leave no in-memory hints, which means that CPU-bound
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7427  	 * processes executing in kernel context might never report an
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7428  	 * RCU quiescent state.  Therefore, the following code causes
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7429  	 * cond_resched() to report a quiescent state, but only when RCU
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7430  	 * is in urgent need of one.
2c00e1199c0608 kernel/sched/core.c Ankur Arora        2024-12-12  7431  	 * A third case, preemptible, but non-PREEMPT_RCU provides for
2c00e1199c0608 kernel/sched/core.c Ankur Arora        2024-12-12  7432  	 * urgently needed quiescent states via rcu_flavor_sched_clock_irq().
^1da177e4c3f41 kernel/sched.c      Linus Torvalds     2005-04-16  7433  	 */
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7434  #ifndef CONFIG_PREEMPT_RCU
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7435  	rcu_all_qs();
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7436  #endif
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7437  	return 0;
^1da177e4c3f41 kernel/sched.c      Linus Torvalds     2005-04-16  7438  }
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7439  EXPORT_SYMBOL(__cond_resched);
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7440  #endif
^1da177e4c3f41 kernel/sched.c      Linus Torvalds     2005-04-16  7441  
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7442  #ifdef CONFIG_PREEMPT_DYNAMIC
b7ebb758568b60 kernel/sched/core.c Ingo Molnar        2025-05-28  7443  # ifdef CONFIG_HAVE_PREEMPT_DYNAMIC_CALL
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7444  #  define cond_resched_dynamic_enabled	__cond_resched
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7445  #  define cond_resched_dynamic_disabled	((void *)&__static_call_return0)
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7446  DEFINE_STATIC_CALL_RET0(cond_resched, __cond_resched);
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7447  EXPORT_STATIC_CALL_TRAMP(cond_resched);
48f24c4da1ee7f kernel/sched.c      Ingo Molnar        2006-07-03  7448  
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7449  #  define might_resched_dynamic_enabled	__cond_resched
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7450  #  define might_resched_dynamic_disabled ((void *)&__static_call_return0)
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7451  DEFINE_STATIC_CALL_RET0(might_resched, __cond_resched);
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7452  EXPORT_STATIC_CALL_TRAMP(might_resched);
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7453  # elif defined(CONFIG_HAVE_PREEMPT_DYNAMIC_KEY)
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7454  static DEFINE_STATIC_KEY_FALSE(sk_dynamic_cond_resched);
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7455  int __sched dynamic_cond_resched(void)
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7456  {
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7457  	if (!static_branch_unlikely(&sk_dynamic_cond_resched))
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7458  		return 0;
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7459  	return __cond_resched();
700a78335fc28a kernel/sched/core.c Christian Göttsche 2022-06-15  7460  }
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7461  EXPORT_SYMBOL(dynamic_cond_resched);
700a78335fc28a kernel/sched/core.c Christian Göttsche 2022-06-15  7462  
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7463  static DEFINE_STATIC_KEY_FALSE(sk_dynamic_might_resched);
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07 @7464  int __sched dynamic_might_resched(void)
700a78335fc28a kernel/sched/core.c Christian Göttsche 2022-06-15  7465  {
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7466  	if (!static_branch_unlikely(&sk_dynamic_might_resched))
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7467  		return 0;
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7468  	return __cond_resched();
e43379f10b4219 kernel/sched.c      Matt Mackall       2005-05-01  7469  }
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7470  EXPORT_SYMBOL(dynamic_might_resched);
04746ed80bcf31 kernel/sched/core.c Ingo Molnar        2024-04-07  7471  # endif
b7ebb758568b60 kernel/sched/core.c Ingo Molnar        2025-05-28  7472  #endif /* CONFIG_PREEMPT_DYNAMIC */
^1da177e4c3f41 kernel/sched.c      Linus Torvalds     2005-04-16  7473  

:::::: The code at line 7415 was first introduced by commit
:::::: 04746ed80bcf3130951ed4d5c1bc5b0bcabdde22 sched/syscalls: Split out kernel/sched/syscalls.c from kernel/sched/core.c

:::::: TO: Ingo Molnar <mingo@kernel.org>
:::::: CC: Ingo Molnar <mingo@kernel.org>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

                 reply	other threads:[~2026-02-25 20:33 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=202602260409.2GS5AzSo-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=llvm@lists.linux.dev \
    --cc=mark.rutland@arm.com \
    --cc=oe-kbuild-all@lists.linux.dev \
    /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.