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>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Mon, 21 Feb 2022 05:53:47 +0800
From:   kernel test robot <lkp@...el.com>
To:     Olivier Langlois <olivier@...llion01.com>,
        Jens Axboe <axboe@...nel.dk>
Cc:     kbuild-all@...ts.01.org, Pavel Begunkov <asml.silence@...il.com>,
        Hao Xu <haoxu@...ux.alibaba.com>,
        io-uring <io-uring@...r.kernel.org>,
        linux-kernel <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v1] io_uring: Add support for napi_busy_poll

Hi Olivier,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v5.17-rc4]
[cannot apply to next-20220217]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Olivier-Langlois/io_uring-Add-support-for-napi_busy_poll/20220220-190634
base:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 4f12b742eb2b3a850ac8be7dc4ed52976fc6cb0b
config: nds32-allnoconfig (https://download.01.org/0day-ci/archive/20220221/202202210559.9VjKAZdv-lkp@intel.com/config)
compiler: nds32le-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/0day-ci/linux/commit/ad36ae938f354b0cd3b38716572385f710accdb0
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Olivier-Langlois/io_uring-Add-support-for-napi_busy_poll/20220220-190634
        git checkout ad36ae938f354b0cd3b38716572385f710accdb0
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=nds32 SHELL=/bin/bash

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

All errors (new ones prefixed by >>):

   fs/io_uring.c: In function 'io_ring_ctx_alloc':
>> fs/io_uring.c:1472:28: error: 'struct io_ring_ctx' has no member named 'napi_list'
    1472 |         INIT_LIST_HEAD(&ctx->napi_list);
         |                            ^~
   fs/io_uring.c: In function '__io_submit_flush_completions':
   fs/io_uring.c:2529:40: warning: variable 'prev' set but not used [-Wunused-but-set-variable]
    2529 |         struct io_wq_work_node *node, *prev;
         |                                        ^~~~


vim +1472 fs/io_uring.c

  1413	
  1414	static __cold struct io_ring_ctx *io_ring_ctx_alloc(struct io_uring_params *p)
  1415	{
  1416		struct io_ring_ctx *ctx;
  1417		int hash_bits;
  1418	
  1419		ctx = kzalloc(sizeof(*ctx), GFP_KERNEL);
  1420		if (!ctx)
  1421			return NULL;
  1422	
  1423		/*
  1424		 * Use 5 bits less than the max cq entries, that should give us around
  1425		 * 32 entries per hash list if totally full and uniformly spread.
  1426		 */
  1427		hash_bits = ilog2(p->cq_entries);
  1428		hash_bits -= 5;
  1429		if (hash_bits <= 0)
  1430			hash_bits = 1;
  1431		ctx->cancel_hash_bits = hash_bits;
  1432		ctx->cancel_hash = kmalloc((1U << hash_bits) * sizeof(struct hlist_head),
  1433						GFP_KERNEL);
  1434		if (!ctx->cancel_hash)
  1435			goto err;
  1436		__hash_init(ctx->cancel_hash, 1U << hash_bits);
  1437	
  1438		ctx->dummy_ubuf = kzalloc(sizeof(*ctx->dummy_ubuf), GFP_KERNEL);
  1439		if (!ctx->dummy_ubuf)
  1440			goto err;
  1441		/* set invalid range, so io_import_fixed() fails meeting it */
  1442		ctx->dummy_ubuf->ubuf = -1UL;
  1443	
  1444		if (percpu_ref_init(&ctx->refs, io_ring_ctx_ref_free,
  1445				    PERCPU_REF_ALLOW_REINIT, GFP_KERNEL))
  1446			goto err;
  1447	
  1448		ctx->flags = p->flags;
  1449		init_waitqueue_head(&ctx->sqo_sq_wait);
  1450		INIT_LIST_HEAD(&ctx->sqd_list);
  1451		INIT_LIST_HEAD(&ctx->cq_overflow_list);
  1452		init_completion(&ctx->ref_comp);
  1453		xa_init_flags(&ctx->io_buffers, XA_FLAGS_ALLOC1);
  1454		xa_init_flags(&ctx->personalities, XA_FLAGS_ALLOC1);
  1455		mutex_init(&ctx->uring_lock);
  1456		init_waitqueue_head(&ctx->cq_wait);
  1457		spin_lock_init(&ctx->completion_lock);
  1458		spin_lock_init(&ctx->timeout_lock);
  1459		INIT_WQ_LIST(&ctx->iopoll_list);
  1460		INIT_LIST_HEAD(&ctx->defer_list);
  1461		INIT_LIST_HEAD(&ctx->timeout_list);
  1462		INIT_LIST_HEAD(&ctx->ltimeout_list);
  1463		spin_lock_init(&ctx->rsrc_ref_lock);
  1464		INIT_LIST_HEAD(&ctx->rsrc_ref_list);
  1465		INIT_DELAYED_WORK(&ctx->rsrc_put_work, io_rsrc_put_work);
  1466		init_llist_head(&ctx->rsrc_put_llist);
  1467		INIT_LIST_HEAD(&ctx->tctx_list);
  1468		ctx->submit_state.free_list.next = NULL;
  1469		INIT_WQ_LIST(&ctx->locked_free_list);
  1470		INIT_DELAYED_WORK(&ctx->fallback_work, io_fallback_req_func);
  1471		INIT_WQ_LIST(&ctx->submit_state.compl_reqs);
> 1472		INIT_LIST_HEAD(&ctx->napi_list);
  1473		return ctx;
  1474	err:
  1475		kfree(ctx->dummy_ubuf);
  1476		kfree(ctx->cancel_hash);
  1477		kfree(ctx);
  1478		return NULL;
  1479	}
  1480	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ