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: <202108182358.bST9ALbl-lkp@intel.com>
Date:   Wed, 18 Aug 2021 23:12:09 +0800
From:   kernel test robot <lkp@...el.com>
To:     Luis Chamberlain <mcgrof@...nel.org>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: [mcgrof:20210818-add-disk-error-handling-v2 160/160]
 drivers/lightnvm/core.c:400:9: warning: ignoring return value of 'add_disk'
 declared with attribute 'warn_unused_result'

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux.git 20210818-add-disk-error-handling-v2
head:   0517c8bf82eb7da58caada94869afb0957f57c81
commit: 0517c8bf82eb7da58caada94869afb0957f57c81 [160/160] block: add __must_check for *add_disk*() callers
config: arc-randconfig-r043-20210818 (attached as .config)
compiler: arceb-elf-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://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux.git/commit/?id=0517c8bf82eb7da58caada94869afb0957f57c81
        git remote add mcgrof https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux.git
        git fetch --no-tags mcgrof 20210818-add-disk-error-handling-v2
        git checkout 0517c8bf82eb7da58caada94869afb0957f57c81
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=arc 

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

All warnings (new ones prefixed by >>):

   drivers/lightnvm/core.c: In function 'nvm_create_tgt':
>> drivers/lightnvm/core.c:400:9: warning: ignoring return value of 'add_disk' declared with attribute 'warn_unused_result' [-Wunused-result]
     400 |         add_disk(tdisk);
         |         ^~~~~~~~~~~~~~~


vim +400 drivers/lightnvm/core.c

e53927393b9987 Javier González   2018-01-05  304  
ade69e2432b795 Matias Bjørling   2017-01-31  305  static int nvm_create_tgt(struct nvm_dev *dev, struct nvm_ioctl_create *create)
ade69e2432b795 Matias Bjørling   2017-01-31  306  {
e53927393b9987 Javier González   2018-01-05  307  	struct nvm_ioctl_create_extended e;
ade69e2432b795 Matias Bjørling   2017-01-31  308  	struct gendisk *tdisk;
ade69e2432b795 Matias Bjørling   2017-01-31  309  	struct nvm_tgt_type *tt;
ade69e2432b795 Matias Bjørling   2017-01-31  310  	struct nvm_target *t;
ade69e2432b795 Matias Bjørling   2017-01-31  311  	struct nvm_tgt_dev *tgt_dev;
ade69e2432b795 Matias Bjørling   2017-01-31  312  	void *targetdata;
a14669ebc0e294 Igor Konopko      2019-05-04  313  	unsigned int mdts;
8d77bb8276062f Rakesh Pandit     2017-04-20  314  	int ret;
ade69e2432b795 Matias Bjørling   2017-01-31  315  
e53927393b9987 Javier González   2018-01-05  316  	switch (create->conf.type) {
e53927393b9987 Javier González   2018-01-05  317  	case NVM_CONFIG_TYPE_SIMPLE:
e53927393b9987 Javier González   2018-01-05  318  		ret = __nvm_config_simple(dev, &create->conf.s);
e53927393b9987 Javier González   2018-01-05  319  		if (ret)
e53927393b9987 Javier González   2018-01-05  320  			return ret;
e53927393b9987 Javier González   2018-01-05  321  
e53927393b9987 Javier González   2018-01-05  322  		e.lun_begin = create->conf.s.lun_begin;
e53927393b9987 Javier González   2018-01-05  323  		e.lun_end = create->conf.s.lun_end;
e53927393b9987 Javier González   2018-01-05  324  		e.op = NVM_TARGET_DEFAULT_OP;
e53927393b9987 Javier González   2018-01-05  325  		break;
e53927393b9987 Javier González   2018-01-05  326  	case NVM_CONFIG_TYPE_EXTENDED:
e53927393b9987 Javier González   2018-01-05  327  		ret = __nvm_config_extended(dev, &create->conf.e);
e53927393b9987 Javier González   2018-01-05  328  		if (ret)
e53927393b9987 Javier González   2018-01-05  329  			return ret;
e53927393b9987 Javier González   2018-01-05  330  
e53927393b9987 Javier González   2018-01-05  331  		e = create->conf.e;
e53927393b9987 Javier González   2018-01-05  332  		break;
e53927393b9987 Javier González   2018-01-05  333  	default:
43db059ea4b7e9 Minwoo Im         2019-09-05  334  		pr_err("config type not valid\n");
e53927393b9987 Javier González   2018-01-05  335  		return -EINVAL;
e53927393b9987 Javier González   2018-01-05  336  	}
e53927393b9987 Javier González   2018-01-05  337  
e29c80e6dd70d6 Javier González   2018-01-05  338  	tt = nvm_find_target_type(create->tgttype);
ade69e2432b795 Matias Bjørling   2017-01-31  339  	if (!tt) {
43db059ea4b7e9 Minwoo Im         2019-09-05  340  		pr_err("target type %s not found\n", create->tgttype);
ade69e2432b795 Matias Bjørling   2017-01-31  341  		return -EINVAL;
ade69e2432b795 Matias Bjørling   2017-01-31  342  	}
ade69e2432b795 Matias Bjørling   2017-01-31  343  
656e33ca3d4051 Matias Bjørling   2018-10-09  344  	if ((tt->flags & NVM_TGT_F_HOST_L2P) != (dev->geo.dom & NVM_RSP_L2P)) {
43db059ea4b7e9 Minwoo Im         2019-09-05  345  		pr_err("device is incompatible with target L2P type.\n");
656e33ca3d4051 Matias Bjørling   2018-10-09  346  		return -EINVAL;
656e33ca3d4051 Matias Bjørling   2018-10-09  347  	}
656e33ca3d4051 Matias Bjørling   2018-10-09  348  
bd77b23b40370f Javier González   2018-01-05  349  	if (nvm_target_exists(create->tgtname)) {
43db059ea4b7e9 Minwoo Im         2019-09-05  350  		pr_err("target name already exists (%s)\n",
bd77b23b40370f Javier González   2018-01-05  351  							create->tgtname);
ade69e2432b795 Matias Bjørling   2017-01-31  352  		return -EINVAL;
ade69e2432b795 Matias Bjørling   2017-01-31  353  	}
ade69e2432b795 Matias Bjørling   2017-01-31  354  
e53927393b9987 Javier González   2018-01-05  355  	ret = nvm_reserve_luns(dev, e.lun_begin, e.lun_end);
12e9a6d62236da Rakesh Pandit     2017-06-27  356  	if (ret)
12e9a6d62236da Rakesh Pandit     2017-06-27  357  		return ret;
ade69e2432b795 Matias Bjørling   2017-01-31  358  
ade69e2432b795 Matias Bjørling   2017-01-31  359  	t = kmalloc(sizeof(struct nvm_target), GFP_KERNEL);
8d77bb8276062f Rakesh Pandit     2017-04-20  360  	if (!t) {
8d77bb8276062f Rakesh Pandit     2017-04-20  361  		ret = -ENOMEM;
ade69e2432b795 Matias Bjørling   2017-01-31  362  		goto err_reserve;
8d77bb8276062f Rakesh Pandit     2017-04-20  363  	}
ade69e2432b795 Matias Bjørling   2017-01-31  364  
e53927393b9987 Javier González   2018-01-05  365  	tgt_dev = nvm_create_tgt_dev(dev, e.lun_begin, e.lun_end, e.op);
ade69e2432b795 Matias Bjørling   2017-01-31  366  	if (!tgt_dev) {
43db059ea4b7e9 Minwoo Im         2019-09-05  367  		pr_err("could not create target device\n");
8d77bb8276062f Rakesh Pandit     2017-04-20  368  		ret = -ENOMEM;
ade69e2432b795 Matias Bjørling   2017-01-31  369  		goto err_t;
ade69e2432b795 Matias Bjørling   2017-01-31  370  	}
ade69e2432b795 Matias Bjørling   2017-01-31  371  
1aabd53a4b49ad Christoph Hellwig 2021-05-21  372  	tdisk = blk_alloc_disk(dev->q->node);
8d77bb8276062f Rakesh Pandit     2017-04-20  373  	if (!tdisk) {
8d77bb8276062f Rakesh Pandit     2017-04-20  374  		ret = -ENOMEM;
7d1ef2f408abec Javier González   2017-04-15  375  		goto err_dev;
8d77bb8276062f Rakesh Pandit     2017-04-20  376  	}
7d1ef2f408abec Javier González   2017-04-15  377  
6eb082452df121 Javier González   2017-04-15  378  	strlcpy(tdisk->disk_name, create->tgtname, sizeof(tdisk->disk_name));
ade69e2432b795 Matias Bjørling   2017-01-31  379  	tdisk->major = 0;
ade69e2432b795 Matias Bjørling   2017-01-31  380  	tdisk->first_minor = 0;
c62b37d96b6eb3 Christoph Hellwig 2020-07-01  381  	tdisk->fops = tt->bops;
ade69e2432b795 Matias Bjørling   2017-01-31  382  
4af3f75d7992dd Javier González   2017-04-15  383  	targetdata = tt->init(tgt_dev, tdisk, create->flags);
8d77bb8276062f Rakesh Pandit     2017-04-20  384  	if (IS_ERR(targetdata)) {
8d77bb8276062f Rakesh Pandit     2017-04-20  385  		ret = PTR_ERR(targetdata);
ade69e2432b795 Matias Bjørling   2017-01-31  386  		goto err_init;
8d77bb8276062f Rakesh Pandit     2017-04-20  387  	}
ade69e2432b795 Matias Bjørling   2017-01-31  388  
ade69e2432b795 Matias Bjørling   2017-01-31  389  	tdisk->private_data = targetdata;
1aabd53a4b49ad Christoph Hellwig 2021-05-21  390  	tdisk->queue->queuedata = targetdata;
ade69e2432b795 Matias Bjørling   2017-01-31  391  
a14669ebc0e294 Igor Konopko      2019-05-04  392  	mdts = (dev->geo.csecs >> 9) * NVM_MAX_VLBA;
a14669ebc0e294 Igor Konopko      2019-05-04  393  	if (dev->geo.mdts) {
a14669ebc0e294 Igor Konopko      2019-05-04  394  		mdts = min_t(u32, dev->geo.mdts,
e46f4e4822bdec Javier González   2018-03-30  395  				(dev->geo.csecs >> 9) * NVM_MAX_VLBA);
a14669ebc0e294 Igor Konopko      2019-05-04  396  	}
1aabd53a4b49ad Christoph Hellwig 2021-05-21  397  	blk_queue_max_hw_sectors(tdisk->queue, mdts);
ade69e2432b795 Matias Bjørling   2017-01-31  398  
ade69e2432b795 Matias Bjørling   2017-01-31  399  	set_capacity(tdisk, tt->capacity(targetdata));
ade69e2432b795 Matias Bjørling   2017-01-31 @400  	add_disk(tdisk);
ade69e2432b795 Matias Bjørling   2017-01-31  401  
8d77bb8276062f Rakesh Pandit     2017-04-20  402  	if (tt->sysfs_init && tt->sysfs_init(tdisk)) {
8d77bb8276062f Rakesh Pandit     2017-04-20  403  		ret = -ENOMEM;
9a69b0ed6257ae Javier González   2017-01-31  404  		goto err_sysfs;
8d77bb8276062f Rakesh Pandit     2017-04-20  405  	}
9a69b0ed6257ae Javier González   2017-01-31  406  
ade69e2432b795 Matias Bjørling   2017-01-31  407  	t->type = tt;
ade69e2432b795 Matias Bjørling   2017-01-31  408  	t->disk = tdisk;
ade69e2432b795 Matias Bjørling   2017-01-31  409  	t->dev = tgt_dev;
ade69e2432b795 Matias Bjørling   2017-01-31  410  
ade69e2432b795 Matias Bjørling   2017-01-31  411  	mutex_lock(&dev->mlock);
ade69e2432b795 Matias Bjørling   2017-01-31  412  	list_add_tail(&t->list, &dev->targets);
ade69e2432b795 Matias Bjørling   2017-01-31  413  	mutex_unlock(&dev->mlock);
ade69e2432b795 Matias Bjørling   2017-01-31  414  
900148296b78c6 Rakesh Pandit     2017-10-13  415  	__module_get(tt->owner);
900148296b78c6 Rakesh Pandit     2017-10-13  416  
ade69e2432b795 Matias Bjørling   2017-01-31  417  	return 0;
9a69b0ed6257ae Javier González   2017-01-31  418  err_sysfs:
9a69b0ed6257ae Javier González   2017-01-31  419  	if (tt->exit)
a7c9e9109ca114 Javier González   2018-06-01  420  		tt->exit(targetdata, true);
ade69e2432b795 Matias Bjørling   2017-01-31  421  err_init:
1aabd53a4b49ad Christoph Hellwig 2021-05-21  422  	blk_cleanup_disk(tdisk);
ade69e2432b795 Matias Bjørling   2017-01-31  423  err_dev:
edee1bdd66bf0f Javier González   2017-04-15  424  	nvm_remove_tgt_dev(tgt_dev, 0);
ade69e2432b795 Matias Bjørling   2017-01-31  425  err_t:
ade69e2432b795 Matias Bjørling   2017-01-31  426  	kfree(t);
ade69e2432b795 Matias Bjørling   2017-01-31  427  err_reserve:
e53927393b9987 Javier González   2018-01-05  428  	nvm_release_luns_err(dev, e.lun_begin, e.lun_end);
8d77bb8276062f Rakesh Pandit     2017-04-20  429  	return ret;
ade69e2432b795 Matias Bjørling   2017-01-31  430  }
ade69e2432b795 Matias Bjørling   2017-01-31  431  

:::::: The code at line 400 was first introduced by commit
:::::: ade69e2432b795c76653e1dfa09c684549826a50 lightnvm: merge gennvm with core

:::::: TO: Matias Bjørling <matias@...xlabs.com>
:::::: CC: Jens Axboe <axboe@...com>

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

Download attachment ".config.gz" of type "application/gzip" (42907 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ