* [peterz-queue:locking/futex 3/23] kernel/futex/waitwake.c:343: warning: expecting prototype for futex_wait_queue(). Prototype was for futex_do_wait() instead
@ 2025-05-07 9:42 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-05-07 9:42 UTC (permalink / raw)
To: Peter Zijlstra; +Cc: llvm, oe-kbuild-all, Sebastian Andrzej Siewior
tree: https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git locking/futex
head: 9140f57c1c1391a0343a08daea9cd53f56e51154
commit: 93f1b6d79a73b520b6875cf3babf4a09acc4eef0 [3/23] futex: Move futex_queue() into futex_wait_setup()
config: x86_64-kexec (https://download.01.org/0day-ci/archive/20250507/202505071708.iowmDlNC-lkp@intel.com/config)
compiler: clang version 20.1.2 (https://github.com/llvm/llvm-project 58df0ef89dd64126512e4ee27b4ac3fd8ddf6247)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250507/202505071708.iowmDlNC-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/202505071708.iowmDlNC-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> kernel/futex/waitwake.c:343: warning: expecting prototype for futex_wait_queue(). Prototype was for futex_do_wait() instead
>> kernel/futex/waitwake.c:585: warning: Function parameter or struct member 'task' not described in 'futex_wait_setup'
vim +343 kernel/futex/waitwake.c
a046f1a0d3e320 Peter Zijlstra 2021-09-23 335
a046f1a0d3e320 Peter Zijlstra 2021-09-23 336 /**
a046f1a0d3e320 Peter Zijlstra 2021-09-23 337 * futex_wait_queue() - futex_queue() and wait for wakeup, timeout, or signal
a046f1a0d3e320 Peter Zijlstra 2021-09-23 338 * @hb: the futex hash bucket, must be locked by the caller
a046f1a0d3e320 Peter Zijlstra 2021-09-23 339 * @q: the futex_q to queue up on
a046f1a0d3e320 Peter Zijlstra 2021-09-23 340 * @timeout: the prepared hrtimer_sleeper, or null for no timeout
a046f1a0d3e320 Peter Zijlstra 2021-09-23 341 */
93f1b6d79a73b5 Peter Zijlstra 2025-04-16 342 void futex_do_wait(struct futex_q *q, struct hrtimer_sleeper *timeout)
a046f1a0d3e320 Peter Zijlstra 2021-09-23 @343 {
a046f1a0d3e320 Peter Zijlstra 2021-09-23 344 /* Arm the timer */
a046f1a0d3e320 Peter Zijlstra 2021-09-23 345 if (timeout)
a046f1a0d3e320 Peter Zijlstra 2021-09-23 346 hrtimer_sleeper_start_expires(timeout, HRTIMER_MODE_ABS);
a046f1a0d3e320 Peter Zijlstra 2021-09-23 347
a046f1a0d3e320 Peter Zijlstra 2021-09-23 348 /*
a046f1a0d3e320 Peter Zijlstra 2021-09-23 349 * If we have been removed from the hash list, then another task
a046f1a0d3e320 Peter Zijlstra 2021-09-23 350 * has tried to wake us, and we can skip the call to schedule().
a046f1a0d3e320 Peter Zijlstra 2021-09-23 351 */
a046f1a0d3e320 Peter Zijlstra 2021-09-23 352 if (likely(!plist_node_empty(&q->list))) {
a046f1a0d3e320 Peter Zijlstra 2021-09-23 353 /*
a046f1a0d3e320 Peter Zijlstra 2021-09-23 354 * If the timer has already expired, current will already be
a046f1a0d3e320 Peter Zijlstra 2021-09-23 355 * flagged for rescheduling. Only call schedule if there
a046f1a0d3e320 Peter Zijlstra 2021-09-23 356 * is no timeout, or if it has yet to expire.
a046f1a0d3e320 Peter Zijlstra 2021-09-23 357 */
a046f1a0d3e320 Peter Zijlstra 2021-09-23 358 if (!timeout || timeout->task)
f5d39b02080914 Peter Zijlstra 2022-08-22 359 schedule();
a046f1a0d3e320 Peter Zijlstra 2021-09-23 360 }
a046f1a0d3e320 Peter Zijlstra 2021-09-23 361 __set_current_state(TASK_RUNNING);
a046f1a0d3e320 Peter Zijlstra 2021-09-23 362 }
a046f1a0d3e320 Peter Zijlstra 2021-09-23 363
:::::: The code at line 343 was first introduced by commit
:::::: a046f1a0d3e320cfee6bdac336416a537f49e7c6 futex: Split out wait/wake
:::::: TO: Peter Zijlstra <peterz@infradead.org>
:::::: CC: Peter Zijlstra <peterz@infradead.org>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2025-05-07 9:43 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-07 9:42 [peterz-queue:locking/futex 3/23] kernel/futex/waitwake.c:343: warning: expecting prototype for futex_wait_queue(). Prototype was for futex_do_wait() instead kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox