From: kernel test robot <lkp@intel.com>
To: Jens Axboe <axboe@kernel.dk>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev
Subject: [axboe:io_uring-thread-handoff 10/13] io_uring/handoff.c:307:36: error: call to undeclared function 'task_stack_page'; ISO C99 and later do not support implicit function declarations
Date: Tue, 01 Sep 2026 20:16:22 +0800 [thread overview]
Message-ID: <202609012001.qCSj57tc-lkp@intel.com> (raw)
tree: https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux.git io_uring-thread-handoff
head: e787853bf31af505ee20b5a64dd31bdaaca8bedd
commit: d664aea9c73b2f39f16192756888e0c03aa1fa28 [10/13] io_uring: enable handing submitter identity to an io-wq worker
config: x86_64-allnoconfig (https://download.01.org/0day-ci/archive/20260901/202609012001.qCSj57tc-lkp@intel.com/config)
compiler: clang version 22.1.3 (https://github.com/llvm/llvm-project e9846648fd6183ee6d8cbdb4502213fcf902a211)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260901/202609012001.qCSj57tc-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/202609012001.qCSj57tc-lkp@intel.com/
All errors (new ones prefixed by >>):
>> io_uring/handoff.c:307:36: error: call to undeclared function 'task_stack_page'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
307 | syscall_set_return_value(current, task_pt_regs(current),
| ^
arch/x86/include/asm/processor.h:668:39: note: expanded from macro 'task_pt_regs'
668 | unsigned long __ptr = (unsigned long)task_stack_page(task); \
| ^
1 error generated.
vim +/task_stack_page +307 io_uring/handoff.c
250
251 /*
252 * Runs on the task that got handed the submitter identity: finish taking
253 * it over, then resume io_uring_enter() where io_submit_sqes() would have
254 * returned and take the syscall result to userspace.
255 */
256 static long io_handoff_resume(void)
257 {
258 struct io_uring_task *tctx = current->io_uring;
259 struct io_handoff *ho = &tctx->handoff;
260 struct task_struct *src = ho->src;
261 struct io_kiocb *req = ho->req;
262 struct io_ring_ctx *ctx = req->ctx;
263 struct io_submit_state *state = &ctx->submit_state;
264 bool bound = io_handoff_bound(req);
265 unsigned int consumed, left;
266 long ret;
267
268 if (WARN_ON_ONCE(thread_handoff_finish(src)))
269 force_sig(SIGKILL);
270 io_wq_handoff_finished(src);
271 put_task_struct_many(src, ho->src_refs);
272 ho->src_refs = 0;
273 ho->src = NULL;
274 ho->req = NULL;
275
276 /* we took a worker, top the spare pool back up */
277 io_wq_handoff_spare(tctx->io_wq, bound, true);
278
279 /*
280 * Finish the batch the blocked request was part of, then submit
281 * what's left of the syscall. Another handoff continues from here,
282 * the consumed count lives in the tctx.
283 */
284 io_run_task_work();
285 mutex_lock(&ctx->uring_lock);
286 consumed = ctx->cached_sq_head - state->sq_head;
287 left = state->submit_nr - consumed;
288 ret = io_submit_sqes_end(ctx, state->submit_nr, left);
289 ho->consumed += ret;
290 if (ho->consumed < ho->to_submit) {
291 ret = io_submit_sqes(ctx, ho->to_submit - ho->consumed);
292 if (ret == -EIOCBQUEUED)
293 return ret;
294 if (ret > 0)
295 ho->consumed += ret;
296 }
297 ret = ho->consumed;
298 if (ret != ho->to_submit) {
299 mutex_unlock(&ctx->uring_lock);
300 } else {
301 ret = io_uring_enter_finish(ctx, ret, ho->min_complete,
302 ho->flags, ho->argp, ho->argsz);
303 }
304 if (!(ho->flags & IORING_ENTER_REGISTERED_RING))
305 fput(ho->file);
306
> 307 syscall_set_return_value(current, task_pt_regs(current),
308 ret < 0 ? ret : 0, ret);
309 return ret;
310 }
311
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
reply other threads:[~2026-09-01 12:16 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=202609012001.qCSj57tc-lkp@intel.com \
--to=lkp@intel.com \
--cc=axboe@kernel.dk \
--cc=llvm@lists.linux.dev \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox