lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202207171120.jkCZ5Bc7-lkp@intel.com>
Date:   Sun, 17 Jul 2022 11:06:41 +0800
From:   kernel test robot <lkp@...el.com>
To:     Jens Axboe <axboe@...nel.dk>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: [axboe-block:for-5.20/io_uring 2/171] io_uring/io_uring.c:11521:1:
 sparse: sparse: Using plain integer as NULL pointer

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-5.20/io_uring
head:   4832d0f22cf865e569b3b90b9db346055730c224
commit: 239b2db7c7ca96b3b7dc883ca90d3b0244e238cd [2/171] io_uring: move to separate directory
config: s390-randconfig-s033-20220717 (https://download.01.org/0day-ci/archive/20220717/202207171120.jkCZ5Bc7-lkp@intel.com/config)
compiler: s390-linux-gcc (GCC) 12.1.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # apt-get install sparse
        # sparse version: v0.6.4-39-gce1a6720-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git/commit/?id=239b2db7c7ca96b3b7dc883ca90d3b0244e238cd
        git remote add axboe-block https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git
        git fetch --no-tags axboe-block for-5.20/io_uring
        git checkout 239b2db7c7ca96b3b7dc883ca90d3b0244e238cd
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=s390 SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@...el.com>


sparse warnings: (new ones prefixed by >>)
   io_uring/io_uring.c:205:37: sparse: sparse: array of flexible structures
   io_uring/io_uring.c:6652:38: sparse: sparse: incorrect type in assignment (different base types) @@     expected signed int [usertype] res @@     got restricted __poll_t @@
   io_uring/io_uring.c:6652:38: sparse:     expected signed int [usertype] res
   io_uring/io_uring.c:6652:38: sparse:     got restricted __poll_t
   io_uring/io_uring.c:6663:56: sparse: sparse: restricted __poll_t degrades to integer
   io_uring/io_uring.c:6662:66: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected restricted __poll_t [usertype] val @@     got unsigned int @@
   io_uring/io_uring.c:6662:66: sparse:     expected restricted __poll_t [usertype] val
   io_uring/io_uring.c:6662:66: sparse:     got unsigned int
   io_uring/io_uring.c:6662:52: sparse: sparse: incorrect type in initializer (different base types) @@     expected restricted __poll_t [usertype] mask @@     got unsigned short @@
   io_uring/io_uring.c:6662:52: sparse:     expected restricted __poll_t [usertype] mask
   io_uring/io_uring.c:6662:52: sparse:     got unsigned short
   io_uring/io_uring.c:6668:50: sparse: sparse: incorrect type in argument 3 (different base types) @@     expected signed int [usertype] res @@     got restricted __poll_t [usertype] mask @@
   io_uring/io_uring.c:6668:50: sparse:     expected signed int [usertype] res
   io_uring/io_uring.c:6668:50: sparse:     got restricted __poll_t [usertype] mask
   io_uring/io_uring.c:6705:68: sparse: sparse: restricted __poll_t degrades to integer
   io_uring/io_uring.c:6705:57: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected restricted __poll_t [usertype] val @@     got unsigned int @@
   io_uring/io_uring.c:6705:57: sparse:     expected restricted __poll_t [usertype] val
   io_uring/io_uring.c:6705:57: sparse:     got unsigned int
   io_uring/io_uring.c:6823:40: sparse: sparse: incorrect type in argument 2 (different base types) @@     expected int mask @@     got restricted __poll_t [usertype] mask @@
   io_uring/io_uring.c:6823:40: sparse:     expected int mask
   io_uring/io_uring.c:6823:40: sparse:     got restricted __poll_t [usertype] mask
   io_uring/io_uring.c:6917:24: sparse: sparse: incorrect type in return expression (different base types) @@     expected int @@     got restricted __poll_t [assigned] [usertype] mask @@
   io_uring/io_uring.c:6917:24: sparse:     expected int
   io_uring/io_uring.c:6917:24: sparse:     got restricted __poll_t [assigned] [usertype] mask
   io_uring/io_uring.c:6937:40: sparse: sparse: incorrect type in argument 2 (different base types) @@     expected int mask @@     got restricted __poll_t [assigned] [usertype] mask @@
   io_uring/io_uring.c:6937:40: sparse:     expected int mask
   io_uring/io_uring.c:6937:40: sparse:     got restricted __poll_t [assigned] [usertype] mask
   io_uring/io_uring.c:6972:33: sparse: sparse: incorrect type in initializer (different base types) @@     expected restricted __poll_t [usertype] mask @@     got int @@
   io_uring/io_uring.c:6972:33: sparse:     expected restricted __poll_t [usertype] mask
   io_uring/io_uring.c:6972:33: sparse:     got int
   io_uring/io_uring.c:7021:33: sparse: sparse: incorrect type in argument 5 (different base types) @@     expected int mask @@     got restricted __poll_t [assigned] [usertype] mask @@
   io_uring/io_uring.c:7021:33: sparse:     expected int mask
   io_uring/io_uring.c:7021:33: sparse:     got restricted __poll_t [assigned] [usertype] mask
   io_uring/io_uring.c:7021:50: sparse: sparse: incorrect type in argument 6 (different base types) @@     expected int events @@     got restricted __poll_t [usertype] events @@
   io_uring/io_uring.c:7021:50: sparse:     expected int events
   io_uring/io_uring.c:7021:50: sparse:     got restricted __poll_t [usertype] events
   io_uring/io_uring.c:7135:24: sparse: sparse: invalid assignment: |=
   io_uring/io_uring.c:7135:24: sparse:    left side has type unsigned int
   io_uring/io_uring.c:7135:24: sparse:    right side has type restricted __poll_t
   io_uring/io_uring.c:7136:65: sparse: sparse: restricted __poll_t degrades to integer
   io_uring/io_uring.c:7136:29: sparse: sparse: restricted __poll_t degrades to integer
   io_uring/io_uring.c:7136:38: sparse: sparse: incorrect type in return expression (different base types) @@     expected restricted __poll_t @@     got unsigned int @@
   io_uring/io_uring.c:7136:38: sparse:     expected restricted __poll_t
   io_uring/io_uring.c:7136:38: sparse:     got unsigned int
   io_uring/io_uring.c:7225:43: sparse: sparse: invalid assignment: &=
   io_uring/io_uring.c:7225:43: sparse:    left side has type restricted __poll_t
   io_uring/io_uring.c:7225:43: sparse:    right side has type int
   io_uring/io_uring.c:7226:62: sparse: sparse: restricted __poll_t degrades to integer
   io_uring/io_uring.c:7226:43: sparse: sparse: invalid assignment: |=
   io_uring/io_uring.c:7226:43: sparse:    left side has type restricted __poll_t
   io_uring/io_uring.c:7226:43: sparse:    right side has type unsigned int
>> io_uring/io_uring.c:11521:1: sparse: sparse: Using plain integer as NULL pointer
>> io_uring/io_uring.c:11521:1: sparse: sparse: Using plain integer as NULL pointer
   io_uring/io_uring.c:12124:1: sparse: sparse: Using plain integer as NULL pointer
   io_uring/io_uring.c:12124:1: sparse: sparse: Using plain integer as NULL pointer
   io_uring/io_uring.c:12719:1: sparse: sparse: Using plain integer as NULL pointer
   io_uring/io_uring.c:12719:1: sparse: sparse: Using plain integer as NULL pointer
   io_uring/io_uring.c:2665:17: sparse: sparse: context imbalance in 'handle_prev_tw_list' - different lock contexts for basic block
   io_uring/io_uring.c:9303:9: sparse: sparse: context imbalance in 'io_sq_thread_unpark' - wrong count at exit
   io_uring/io_uring.c:9314:9: sparse: sparse: context imbalance in 'io_sq_thread_park' - wrong count at exit

vim +11521 io_uring/io_uring.c

c73ebb685fb6dfb fs/io_uring.c Hao Xu             2020-11-03  11520  
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07 @11521  SYSCALL_DEFINE6(io_uring_enter, unsigned int, fd, u32, to_submit,
c73ebb685fb6dfb fs/io_uring.c Hao Xu             2020-11-03  11522  		u32, min_complete, u32, flags, const void __user *, argp,
c73ebb685fb6dfb fs/io_uring.c Hao Xu             2020-11-03  11523  		size_t, argsz)
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11524  {
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11525  	struct io_ring_ctx *ctx;
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11526  	struct fd f;
33f993da9829738 fs/io_uring.c Pavel Begunkov     2021-03-19  11527  	long ret;
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11528  
4c6e277c4cc4a6b fs/io_uring.c Jens Axboe         2020-07-01  11529  	io_run_task_work();
b41e98524e424d1 fs/io_uring.c Jens Axboe         2020-02-17  11530  
33f993da9829738 fs/io_uring.c Pavel Begunkov     2021-03-19  11531  	if (unlikely(flags & ~(IORING_ENTER_GETEVENTS | IORING_ENTER_SQ_WAKEUP |
e7a6c00dc77aedf fs/io_uring.c Jens Axboe         2022-03-04  11532  			       IORING_ENTER_SQ_WAIT | IORING_ENTER_EXT_ARG |
e7a6c00dc77aedf fs/io_uring.c Jens Axboe         2022-03-04  11533  			       IORING_ENTER_REGISTERED_RING)))
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11534  		return -EINVAL;
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11535  
e7a6c00dc77aedf fs/io_uring.c Jens Axboe         2022-03-04  11536  	/*
e7a6c00dc77aedf fs/io_uring.c Jens Axboe         2022-03-04  11537  	 * Ring fd has been registered via IORING_REGISTER_RING_FDS, we
e7a6c00dc77aedf fs/io_uring.c Jens Axboe         2022-03-04  11538  	 * need only dereference our task private array to find it.
e7a6c00dc77aedf fs/io_uring.c Jens Axboe         2022-03-04  11539  	 */
e7a6c00dc77aedf fs/io_uring.c Jens Axboe         2022-03-04  11540  	if (flags & IORING_ENTER_REGISTERED_RING) {
e7a6c00dc77aedf fs/io_uring.c Jens Axboe         2022-03-04  11541  		struct io_uring_task *tctx = current->io_uring;
e7a6c00dc77aedf fs/io_uring.c Jens Axboe         2022-03-04  11542  
e7a6c00dc77aedf fs/io_uring.c Jens Axboe         2022-03-04  11543  		if (!tctx || fd >= IO_RINGFD_REG_MAX)
e7a6c00dc77aedf fs/io_uring.c Jens Axboe         2022-03-04  11544  			return -EINVAL;
e7a6c00dc77aedf fs/io_uring.c Jens Axboe         2022-03-04  11545  		fd = array_index_nospec(fd, IO_RINGFD_REG_MAX);
e7a6c00dc77aedf fs/io_uring.c Jens Axboe         2022-03-04  11546  		f.file = tctx->registered_rings[fd];
4329490a78b66ae fs/io_uring.c Al Viro            2022-05-11  11547  		f.flags = 0;
e7a6c00dc77aedf fs/io_uring.c Jens Axboe         2022-03-04  11548  	} else {
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11549  		f = fdget(fd);
4329490a78b66ae fs/io_uring.c Al Viro            2022-05-11  11550  	}
4329490a78b66ae fs/io_uring.c Al Viro            2022-05-11  11551  
33f993da9829738 fs/io_uring.c Pavel Begunkov     2021-03-19  11552  	if (unlikely(!f.file))
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11553  		return -EBADF;
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11554  
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11555  	ret = -EOPNOTSUPP;
33f993da9829738 fs/io_uring.c Pavel Begunkov     2021-03-19  11556  	if (unlikely(f.file->f_op != &io_uring_fops))
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11557  		goto out_fput;
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11558  
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11559  	ret = -ENXIO;
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11560  	ctx = f.file->private_data;
33f993da9829738 fs/io_uring.c Pavel Begunkov     2021-03-19  11561  	if (unlikely(!percpu_ref_tryget(&ctx->refs)))
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11562  		goto out_fput;
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11563  
7e84e1c7566a1df fs/io_uring.c Stefano Garzarella 2020-08-27  11564  	ret = -EBADFD;
33f993da9829738 fs/io_uring.c Pavel Begunkov     2021-03-19  11565  	if (unlikely(ctx->flags & IORING_SETUP_R_DISABLED))
7e84e1c7566a1df fs/io_uring.c Stefano Garzarella 2020-08-27  11566  		goto out;
7e84e1c7566a1df fs/io_uring.c Stefano Garzarella 2020-08-27  11567  
6c271ce2f1d572f fs/io_uring.c Jens Axboe         2019-01-10  11568  	/*
6c271ce2f1d572f fs/io_uring.c Jens Axboe         2019-01-10  11569  	 * For SQ polling, the thread will do all submissions and completions.
6c271ce2f1d572f fs/io_uring.c Jens Axboe         2019-01-10  11570  	 * Just return the requested submit count, and wake the thread if
6c271ce2f1d572f fs/io_uring.c Jens Axboe         2019-01-10  11571  	 * we were asked to.
6c271ce2f1d572f fs/io_uring.c Jens Axboe         2019-01-10  11572  	 */
b2a9eadab857309 fs/io_uring.c Jens Axboe         2019-09-12  11573  	ret = 0;
6c271ce2f1d572f fs/io_uring.c Jens Axboe         2019-01-10  11574  	if (ctx->flags & IORING_SETUP_SQPOLL) {
90f67366cb88719 fs/io_uring.c Pavel Begunkov     2021-08-09  11575  		io_cqring_overflow_flush(ctx);
6c503150ae33ee1 fs/io_uring.c Pavel Begunkov     2021-01-04  11576  
21f965221e7c426 fs/io_uring.c Jens Axboe         2021-08-14  11577  		if (unlikely(ctx->sq_data->thread == NULL)) {
041474885e9707a fs/io_uring.c Stefan Metzmacher  2021-03-07  11578  			ret = -EOWNERDEAD;
5f3f26f98ae484a fs/io_uring.c Jens Axboe         2021-02-25  11579  			goto out;
21f965221e7c426 fs/io_uring.c Jens Axboe         2021-08-14  11580  		}
6c271ce2f1d572f fs/io_uring.c Jens Axboe         2019-01-10  11581  		if (flags & IORING_ENTER_SQ_WAKEUP)
534ca6d684f1fea fs/io_uring.c Jens Axboe         2020-09-02  11582  			wake_up(&ctx->sq_data->wait);
d9d05217cb6990b fs/io_uring.c Pavel Begunkov     2021-01-08  11583  		if (flags & IORING_ENTER_SQ_WAIT) {
d9d05217cb6990b fs/io_uring.c Pavel Begunkov     2021-01-08  11584  			ret = io_sqpoll_wait_sq(ctx);
d9d05217cb6990b fs/io_uring.c Pavel Begunkov     2021-01-08  11585  			if (ret)
d9d05217cb6990b fs/io_uring.c Pavel Begunkov     2021-01-08  11586  				goto out;
d9d05217cb6990b fs/io_uring.c Pavel Begunkov     2021-01-08  11587  		}
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11588  		ret = to_submit;
b2a9eadab857309 fs/io_uring.c Jens Axboe         2019-09-12  11589  	} else if (to_submit) {
eef51daa72f745b fs/io_uring.c Pavel Begunkov     2021-06-14  11590  		ret = io_uring_add_tctx_node(ctx);
0f2122045b94624 fs/io_uring.c Jens Axboe         2020-09-13  11591  		if (unlikely(ret))
0f2122045b94624 fs/io_uring.c Jens Axboe         2020-09-13  11592  			goto out;
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov     2022-03-22  11593  
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11594  		mutex_lock(&ctx->uring_lock);
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11595  		ret = io_submit_sqes(ctx, to_submit);
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11596  		if (ret != to_submit) {
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11597  			mutex_unlock(&ctx->uring_lock);
7c504e65206a437 fs/io_uring.c Pavel Begunkov     2019-12-18  11598  			goto out;
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11599  		}
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov     2022-03-22  11600  		if ((flags & IORING_ENTER_GETEVENTS) && ctx->syscall_iopoll)
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov     2022-03-22  11601  			goto iopoll_locked;
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov     2022-03-22  11602  		mutex_unlock(&ctx->uring_lock);
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov     2022-03-22  11603  	}
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11604  	if (flags & IORING_ENTER_GETEVENTS) {
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11605  		int ret2;
773697b610bff94 fs/io_uring.c Pavel Begunkov     2022-03-22  11606  		if (ctx->syscall_iopoll) {
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov     2022-03-22  11607  			/*
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov     2022-03-22  11608  			 * We disallow the app entering submit/complete with
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov     2022-03-22  11609  			 * polling, but we still need to lock the ring to
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov     2022-03-22  11610  			 * prevent racing with polled issue that got punted to
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov     2022-03-22  11611  			 * a workqueue.
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov     2022-03-22  11612  			 */
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov     2022-03-22  11613  			mutex_lock(&ctx->uring_lock);
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov     2022-03-22  11614  iopoll_locked:
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11615  			ret2 = io_validate_ext_arg(flags, argp, argsz);
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11616  			if (likely(!ret2)) {
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11617  				min_complete = min(min_complete,
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11618  						   ctx->cq_entries);
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11619  				ret2 = io_iopoll_check(ctx, min_complete);
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov     2022-03-22  11620  			}
d487b43cd3276e4 fs/io_uring.c Pavel Begunkov     2022-03-22  11621  			mutex_unlock(&ctx->uring_lock);
def596e9557c91d fs/io_uring.c Jens Axboe         2019-01-09  11622  		} else {
c73ebb685fb6dfb fs/io_uring.c Hao Xu             2020-11-03  11623  			const sigset_t __user *sig;
c73ebb685fb6dfb fs/io_uring.c Hao Xu             2020-11-03  11624  			struct __kernel_timespec __user *ts;
c73ebb685fb6dfb fs/io_uring.c Hao Xu             2020-11-03  11625  
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11626  			ret2 = io_get_ext_arg(flags, argp, &argsz, &ts, &sig);
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11627  			if (likely(!ret2)) {
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11628  				min_complete = min(min_complete,
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11629  						   ctx->cq_entries);
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11630  				ret2 = io_cqring_wait(ctx, min_complete, sig,
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11631  						      argsz, ts);
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11632  			}
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11633  		}
c73ebb685fb6dfb fs/io_uring.c Hao Xu             2020-11-03  11634  
155bc9505dbd661 fs/io_uring.c Dylan Yudaken      2022-04-21  11635  		if (!ret) {
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11636  			ret = ret2;
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11637  
32b2244a840a90e fs/io_uring.c Xiaoguang Wang     2020-03-11  11638  			/*
155bc9505dbd661 fs/io_uring.c Dylan Yudaken      2022-04-21  11639  			 * EBADR indicates that one or more CQE were dropped.
155bc9505dbd661 fs/io_uring.c Dylan Yudaken      2022-04-21  11640  			 * Once the user has been informed we can clear the bit
155bc9505dbd661 fs/io_uring.c Dylan Yudaken      2022-04-21  11641  			 * as they are obviously ok with those drops.
32b2244a840a90e fs/io_uring.c Xiaoguang Wang     2020-03-11  11642  			 */
155bc9505dbd661 fs/io_uring.c Dylan Yudaken      2022-04-21  11643  			if (unlikely(ret2 == -EBADR))
155bc9505dbd661 fs/io_uring.c Dylan Yudaken      2022-04-21  11644  				clear_bit(IO_CHECK_CQ_DROPPED_BIT,
155bc9505dbd661 fs/io_uring.c Dylan Yudaken      2022-04-21  11645  					  &ctx->check_cq);
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11646  		}
def596e9557c91d fs/io_uring.c Jens Axboe         2019-01-09  11647  	}
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11648  
7c504e65206a437 fs/io_uring.c Pavel Begunkov     2019-12-18  11649  out:
6805b32ec2b0897 fs/io_uring.c Pavel Begunkov     2019-10-08  11650  	percpu_ref_put(&ctx->refs);
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11651  out_fput:
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11652  	fdput(f);
3e813c9026720c1 fs/io_uring.c Dylan Yudaken      2022-04-21  11653  	return ret;
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11654  }
2b188cc1bb857a9 fs/io_uring.c Jens Axboe         2019-01-07  11655  

:::::: The code at line 11521 was first introduced by commit
:::::: 2b188cc1bb857a9d4701ae59aa7768b5124e262e Add io_uring IO interface

:::::: TO: Jens Axboe <axboe@...nel.dk>
:::::: CC: Jens Axboe <axboe@...nel.dk>

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ