* [axboe:io_uring-thread-handoff.2 11/15] io_uring/io_uring.c:2828 __do_sys_io_uring_enter() warn: inconsistent returns '&ctx->uring_lock'.
@ 2026-09-09 23:37 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-09-09 23:37 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp, Dan Carpenter
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
TO: Jens Axboe <axboe@kernel.dk>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux.git io_uring-thread-handoff.2
head: 360bd4c7bd75c8edf89050b3f5820552176ae462
commit: 4aa11821fdac6420f0c73596c2537e56064d7b2d [11/15] io_uring: enable handing submitter identity to an io-wq worker
:::::: branch date: 9 hours ago
:::::: commit date: 32 hours ago
config: parisc-randconfig-r071-20260910 (https://download.01.org/0day-ci/archive/20260910/202609100721.uX7gYHFt-lkp@intel.com/config)
compiler: hppa-linux-gcc (GCC) 13.4.0
smatch: v0.5.0-9187-g5189e3fb
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>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202609100721.uX7gYHFt-lkp@intel.com/
smatch warnings:
io_uring/io_uring.c:2828 __do_sys_io_uring_enter() warn: inconsistent returns '&ctx->uring_lock'.
io_uring/io_uring.c:2828 __do_sys_io_uring_enter() warn: inconsistent returns '&ctx->uring_lock'.
vim +2828 io_uring/io_uring.c
1eff5d7b2f1d289 io_uring/io_uring.c Jens Axboe 2026-08-30 2752
c5e9f6a96bf7379 io_uring/io_uring.c Jens Axboe 2026-04-08 2753 SYSCALL_DEFINE6(io_uring_enter, unsigned int, fd, u32, to_submit,
c5e9f6a96bf7379 io_uring/io_uring.c Jens Axboe 2026-04-08 2754 u32, min_complete, u32, flags, const void __user *, argp,
c5e9f6a96bf7379 io_uring/io_uring.c Jens Axboe 2026-04-08 2755 size_t, argsz)
c5e9f6a96bf7379 io_uring/io_uring.c Jens Axboe 2026-04-08 2756 {
c5e9f6a96bf7379 io_uring/io_uring.c Jens Axboe 2026-04-08 2757 struct io_ring_ctx *ctx;
c5e9f6a96bf7379 io_uring/io_uring.c Jens Axboe 2026-04-08 2758 struct file *file;
c5e9f6a96bf7379 io_uring/io_uring.c Jens Axboe 2026-04-08 2759 long ret;
c5e9f6a96bf7379 io_uring/io_uring.c Jens Axboe 2026-04-08 2760
c5e9f6a96bf7379 io_uring/io_uring.c Jens Axboe 2026-04-08 2761 if (unlikely(flags & ~IORING_ENTER_FLAGS))
c5e9f6a96bf7379 io_uring/io_uring.c Jens Axboe 2026-04-08 2762 return -EINVAL;
c5e9f6a96bf7379 io_uring/io_uring.c Jens Axboe 2026-04-08 2763
c5e9f6a96bf7379 io_uring/io_uring.c Jens Axboe 2026-04-08 2764 file = io_uring_ctx_get_file(fd, flags & IORING_ENTER_REGISTERED_RING);
c5e9f6a96bf7379 io_uring/io_uring.c Jens Axboe 2026-04-08 2765 if (IS_ERR(file))
c5e9f6a96bf7379 io_uring/io_uring.c Jens Axboe 2026-04-08 2766 return PTR_ERR(file);
73363c262d6a7d2 io_uring/io_uring.c Jens Axboe 2023-11-28 2767 ctx = file->private_data;
7e84e1c7566a1df fs/io_uring.c Stefano Garzarella 2020-08-27 2768 ret = -EBADFD;
7a8737e1132ff07 io_uring/io_uring.c Caleb Sander Mateos 2026-01-05 2769 /*
7a8737e1132ff07 io_uring/io_uring.c Caleb Sander Mateos 2026-01-05 2770 * Keep IORING_SETUP_R_DISABLED check before submitter_task load
7a8737e1132ff07 io_uring/io_uring.c Caleb Sander Mateos 2026-01-05 2771 * in io_uring_add_tctx_node() -> __io_uring_add_tctx_node_from_submit()
7a8737e1132ff07 io_uring/io_uring.c Caleb Sander Mateos 2026-01-05 2772 */
7a8737e1132ff07 io_uring/io_uring.c Caleb Sander Mateos 2026-01-05 2773 if (unlikely(smp_load_acquire(&ctx->flags) & IORING_SETUP_R_DISABLED))
7e84e1c7566a1df fs/io_uring.c Stefano Garzarella 2020-08-27 2774 goto out;
7e84e1c7566a1df fs/io_uring.c Stefano Garzarella 2020-08-27 2775
033af2b3eb19c5e io_uring/io_uring.c Pavel Begunkov 2026-02-26 2776 if (io_has_loop_ops(ctx)) {
033af2b3eb19c5e io_uring/io_uring.c Pavel Begunkov 2026-02-26 2777 ret = io_run_loop(ctx);
033af2b3eb19c5e io_uring/io_uring.c Pavel Begunkov 2026-02-26 2778 goto out;
033af2b3eb19c5e io_uring/io_uring.c Pavel Begunkov 2026-02-26 2779 }
033af2b3eb19c5e io_uring/io_uring.c Pavel Begunkov 2026-02-26 2780
6c271ce2f1d572f fs/io_uring.c Jens Axboe 2019-01-10 2781 /*
6c271ce2f1d572f fs/io_uring.c Jens Axboe 2019-01-10 2782 * For SQ polling, the thread will do all submissions and completions.
6c271ce2f1d572f fs/io_uring.c Jens Axboe 2019-01-10 2783 * Just return the requested submit count, and wake the thread if
6c271ce2f1d572f fs/io_uring.c Jens Axboe 2019-01-10 2784 * we were asked to.
6c271ce2f1d572f fs/io_uring.c Jens Axboe 2019-01-10 2785 */
b2a9eadab857309 fs/io_uring.c Jens Axboe 2019-09-12 2786 ret = 0;
6c271ce2f1d572f fs/io_uring.c Jens Axboe 2019-01-10 2787 if (ctx->flags & IORING_SETUP_SQPOLL) {
21f965221e7c426 fs/io_uring.c Jens Axboe 2021-08-14 2788 if (unlikely(ctx->sq_data->thread == NULL)) {
041474885e9707a fs/io_uring.c Stefan Metzmacher 2021-03-07 2789 ret = -EOWNERDEAD;
5f3f26f98ae484a fs/io_uring.c Jens Axboe 2021-02-25 2790 goto out;
21f965221e7c426 fs/io_uring.c Jens Axboe 2021-08-14 2791 }
6c271ce2f1d572f fs/io_uring.c Jens Axboe 2019-01-10 2792 if (flags & IORING_ENTER_SQ_WAKEUP)
534ca6d684f1fea fs/io_uring.c Jens Axboe 2020-09-02 2793 wake_up(&ctx->sq_data->wait);
88b80534f60f5dd io_uring/io_uring.c Quanfa Fu 2023-01-15 2794 if (flags & IORING_ENTER_SQ_WAIT)
88b80534f60f5dd io_uring/io_uring.c Quanfa Fu 2023-01-15 2795 io_sqpoll_wait_sq(ctx);
88b80534f60f5dd io_uring/io_uring.c Quanfa Fu 2023-01-15 2796
3e813c9026720c1 fs/io_uring.c Dylan Yudaken 2022-04-21 2797 ret = to_submit;
b2a9eadab857309 fs/io_uring.c Jens Axboe 2019-09-12 2798 } else if (to_submit) {
eef51daa72f745b fs/io_uring.c Pavel Begunkov 2021-06-14 2799 ret = io_uring_add_tctx_node(ctx);
0f2122045b94624 fs/io_uring.c Jens Axboe 2020-09-13 2800 if (unlikely(ret))
0f2122045b94624 fs/io_uring.c Jens Axboe 2020-09-13 2801 goto out;
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov 2022-03-22 2802
4aa11821fdac642 io_uring/io_uring.c Jens Axboe 2026-08-30 2803 io_handoff_enter(file, to_submit, min_complete, flags, argp,
4aa11821fdac642 io_uring/io_uring.c Jens Axboe 2026-08-30 2804 argsz);
2b188cc1bb857a9 fs/io_uring.c Jens Axboe 2019-01-07 2805 mutex_lock(&ctx->uring_lock);
3e813c9026720c1 fs/io_uring.c Dylan Yudaken 2022-04-21 2806 ret = io_submit_sqes(ctx, to_submit);
4aa11821fdac642 io_uring/io_uring.c Jens Axboe 2026-08-30 2807 /*
4aa11821fdac642 io_uring/io_uring.c Jens Axboe 2026-08-30 2808 * A blocked issue handed our identity to a worker which
4aa11821fdac642 io_uring/io_uring.c Jens Axboe 2026-08-30 2809 * finishes this syscall; the file ref went with it.
4aa11821fdac642 io_uring/io_uring.c Jens Axboe 2026-08-30 2810 */
4aa11821fdac642 io_uring/io_uring.c Jens Axboe 2026-08-30 2811 if (unlikely(ret == -EIOCBQUEUED))
4aa11821fdac642 io_uring/io_uring.c Jens Axboe 2026-08-30 2812 return io_uring_handoff_worker();
3e813c9026720c1 fs/io_uring.c Dylan Yudaken 2022-04-21 2813 if (ret != to_submit) {
2b188cc1bb857a9 fs/io_uring.c Jens Axboe 2019-01-07 2814 mutex_unlock(&ctx->uring_lock);
7c504e65206a437 fs/io_uring.c Pavel Begunkov 2019-12-18 2815 goto out;
2b188cc1bb857a9 fs/io_uring.c Jens Axboe 2019-01-07 2816 }
1eff5d7b2f1d289 io_uring/io_uring.c Jens Axboe 2026-08-30 2817 ret = io_uring_enter_finish(ctx, ret, min_complete, flags,
1eff5d7b2f1d289 io_uring/io_uring.c Jens Axboe 2026-08-30 2818 argp, argsz);
1eff5d7b2f1d289 io_uring/io_uring.c Jens Axboe 2026-08-30 2819 goto out;
3e813c9026720c1 fs/io_uring.c Dylan Yudaken 2022-04-21 2820 }
c73ebb685fb6dfb fs/io_uring.c Hao Xu 2020-11-03 2821
1eff5d7b2f1d289 io_uring/io_uring.c Jens Axboe 2026-08-30 2822 if (flags & IORING_ENTER_GETEVENTS)
1eff5d7b2f1d289 io_uring/io_uring.c Jens Axboe 2026-08-30 2823 ret = io_uring_getevents(ctx, ret, min_complete, flags, argp,
1eff5d7b2f1d289 io_uring/io_uring.c Jens Axboe 2026-08-30 2824 argsz);
7c504e65206a437 fs/io_uring.c Pavel Begunkov 2019-12-18 2825 out:
73363c262d6a7d2 io_uring/io_uring.c Jens Axboe 2023-11-28 2826 if (!(flags & IORING_ENTER_REGISTERED_RING))
73363c262d6a7d2 io_uring/io_uring.c Jens Axboe 2023-11-28 2827 fput(file);
3e813c9026720c1 fs/io_uring.c Dylan Yudaken 2022-04-21 @2828 return ret;
2b188cc1bb857a9 fs/io_uring.c Jens Axboe 2019-01-07 2829 }
2b188cc1bb857a9 fs/io_uring.c Jens Axboe 2019-01-07 2830
:::::: The code at line 2828 was first introduced by commit
:::::: 3e813c9026720c1291ef3c91caa2e26f88e28367 io_uring: rework io_uring_enter to simplify return value
:::::: TO: Dylan Yudaken <dylany@fb.com>
:::::: CC: Jens Axboe <axboe@kernel.dk>
--
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:[~2026-09-09 23:38 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-09 23:37 [axboe:io_uring-thread-handoff.2 11/15] io_uring/io_uring.c:2828 __do_sys_io_uring_enter() warn: inconsistent returns '&ctx->uring_lock' kernel test robot
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.