[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202108190040.XtaIEVKi-lkp@intel.com>
Date: Thu, 19 Aug 2021 00:05:46 +0800
From: kernel test robot <lkp@...el.com>
To: Christoph Hellwig <hch@....de>
Cc: clang-built-linux@...glegroups.com, kbuild-all@...ts.01.org,
linux-kernel@...r.kernel.org, Luis Chamberlain <mcgrof@...nel.org>
Subject: [mcgrof-next:20210817-add-disk-error-handling-next 1/89]
drivers/nvme/host/core.c:3760:22: error: use of undeclared identifier
'NVME_QUIRK_LIGHTNVM'; did you mean 'NVME_NS_LIGHTNVM'?
tree: https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux-next.git 20210817-add-disk-error-handling-next
head: 3d00c210d7fd616243af9cf41829f4a56f116ba8
commit: 6e8cedeeaa2d0b259010b0d956020ba8284196ce [1/89] nvme: use blk_mq_alloc_disk
config: hexagon-randconfig-r045-20210816 (attached as .config)
compiler: clang version 12.0.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-next.git/commit/?id=6e8cedeeaa2d0b259010b0d956020ba8284196ce
git remote add mcgrof-next https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux-next.git
git fetch --no-tags mcgrof-next 20210817-add-disk-error-handling-next
git checkout 6e8cedeeaa2d0b259010b0d956020ba8284196ce
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross O=build_dir ARCH=hexagon 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 >>):
>> drivers/nvme/host/core.c:3760:22: error: use of undeclared identifier 'NVME_QUIRK_LIGHTNVM'; did you mean 'NVME_NS_LIGHTNVM'?
if ((ctrl->quirks & NVME_QUIRK_LIGHTNVM) && id->vs[0] == 0x1) {
^~~~~~~~~~~~~~~~~~~
NVME_NS_LIGHTNVM
drivers/nvme/host/nvme.h:52:2: note: 'NVME_NS_LIGHTNVM' declared here
NVME_NS_LIGHTNVM = 1,
^
>> drivers/nvme/host/core.c:3761:7: error: implicit declaration of function 'nvme_nvm_register' [-Werror,-Wimplicit-function-declaration]
if (nvme_nvm_register(ns, disk->disk_name, node)) {
^
drivers/nvme/host/core.c:3761:7: note: did you mean 'nvme_pr_register'?
drivers/nvme/host/core.c:1970:12: note: 'nvme_pr_register' declared here
static int nvme_pr_register(struct block_device *bdev, u64 old,
^
2 errors generated.
vim +3760 drivers/nvme/host/core.c
3710
3711 static void nvme_alloc_ns(struct nvme_ctrl *ctrl, unsigned nsid,
3712 struct nvme_ns_ids *ids)
3713 {
3714 struct nvme_ns *ns;
3715 struct gendisk *disk;
3716 struct nvme_id_ns *id;
3717 int node = ctrl->numa_node;
3718
3719 if (nvme_identify_ns(ctrl, nsid, ids, &id))
3720 return;
3721
3722 ns = kzalloc_node(sizeof(*ns), GFP_KERNEL, node);
3723 if (!ns)
3724 goto out_free_id;
3725
3726 disk = blk_mq_alloc_disk(ctrl->tagset, ns);
3727 if (IS_ERR(disk))
3728 goto out_free_ns;
3729 disk->fops = &nvme_bdev_ops;
3730 disk->private_data = ns;
3731
3732 ns->disk = disk;
3733 ns->queue = disk->queue;
3734
3735 if (ctrl->opts && ctrl->opts->data_digest)
3736 blk_queue_flag_set(QUEUE_FLAG_STABLE_WRITES, ns->queue);
3737
3738 blk_queue_flag_set(QUEUE_FLAG_NONROT, ns->queue);
3739 if (ctrl->ops->flags & NVME_F_PCI_P2PDMA)
3740 blk_queue_flag_set(QUEUE_FLAG_PCI_P2PDMA, ns->queue);
3741
3742 ns->ctrl = ctrl;
3743 kref_init(&ns->kref);
3744
3745 if (nvme_init_ns_head(ns, nsid, ids, id->nmic & NVME_NS_NMIC_SHARED))
3746 goto out_cleanup_disk;
3747
3748 /*
3749 * Without the multipath code enabled, multiple controller per
3750 * subsystems are visible as devices and thus we cannot use the
3751 * subsystem instance.
3752 */
3753 if (!nvme_mpath_set_disk_name(ns, disk->disk_name, &disk->flags))
3754 sprintf(disk->disk_name, "nvme%dn%d", ctrl->instance,
3755 ns->head->instance);
3756
3757 if (nvme_update_ns_info(ns, id))
3758 goto out_unlink_ns;
3759
> 3760 if ((ctrl->quirks & NVME_QUIRK_LIGHTNVM) && id->vs[0] == 0x1) {
> 3761 if (nvme_nvm_register(ns, disk->disk_name, node)) {
3762 dev_warn(ctrl->device, "LightNVM init failure\n");
3763 goto out_unlink_ns;
3764 }
3765 }
3766
3767 down_write(&ctrl->namespaces_rwsem);
3768 list_add_tail(&ns->list, &ctrl->namespaces);
3769 up_write(&ctrl->namespaces_rwsem);
3770
3771 nvme_get_ctrl(ctrl);
3772
3773 device_add_disk(ctrl->device, ns->disk, nvme_ns_id_attr_groups);
3774 if (!nvme_ns_head_multipath(ns->head))
3775 nvme_add_ns_cdev(ns);
3776
3777 nvme_mpath_add_disk(ns, id);
3778 nvme_fault_inject_init(&ns->fault_inject, ns->disk->disk_name);
3779 kfree(id);
3780
3781 return;
3782
3783 out_unlink_ns:
3784 mutex_lock(&ctrl->subsys->lock);
3785 list_del_rcu(&ns->siblings);
3786 if (list_empty(&ns->head->list))
3787 list_del_init(&ns->head->entry);
3788 mutex_unlock(&ctrl->subsys->lock);
3789 nvme_put_ns_head(ns->head);
3790 out_cleanup_disk:
3791 blk_cleanup_disk(disk);
3792 out_free_ns:
3793 kfree(ns);
3794 out_free_id:
3795 kfree(id);
3796 }
3797
---
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" (23445 bytes)
Powered by blists - more mailing lists