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 for Android: free password hash cracker in your pocket
[<prev] [next>] [day] [month] [year] [list]
Date:   Fri, 25 Mar 2022 03:17:49 +0800
From:   kernel test robot <lkp@...el.com>
To:     Hannes Reinecke <hare@...e.de>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: [hare-scsi-devel:virtual_subsys 165/170]
 drivers/nvme/host/core.c:3759:30: error: passing argument 1 of
 'nvme_mpath_alloc_disk' from incompatible pointer type

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/hare/scsi-devel.git virtual_subsys
head:   275f3eb0b76e4cbc9fddaf4187988481747bb456
commit: e55421ca442930c9cc7606d8aa695ca85d485039 [165/170] nvme: use subsystem as argument in nvme_alloc_ns_head()
config: i386-randconfig-a003 (https://download.01.org/0day-ci/archive/20220325/202203250302.1bKlpHC6-lkp@intel.com/config)
compiler: gcc-9 (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0
reproduce (this is a W=1 build):
        # https://git.kernel.org/pub/scm/linux/kernel/git/hare/scsi-devel.git/commit/?id=e55421ca442930c9cc7606d8aa695ca85d485039
        git remote add hare-scsi-devel https://git.kernel.org/pub/scm/linux/kernel/git/hare/scsi-devel.git
        git fetch --no-tags hare-scsi-devel virtual_subsys
        git checkout e55421ca442930c9cc7606d8aa695ca85d485039
        # save the config file to linux build tree
        mkdir build_dir
        make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/nvme/host/

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: In function 'nvme_alloc_ns_head':
>> drivers/nvme/host/core.c:3759:30: error: passing argument 1 of 'nvme_mpath_alloc_disk' from incompatible pointer type [-Werror=incompatible-pointer-types]
    3759 |  ret = nvme_mpath_alloc_disk(subsys, ctrl, head);
         |                              ^~~~~~
         |                              |
         |                              struct nvme_subsystem *
   In file included from drivers/nvme/host/core.c:25:
   drivers/nvme/host/nvme.h:819:59: note: expected 'struct nvme_ctrl *' but argument is of type 'struct nvme_subsystem *'
     819 | static inline int nvme_mpath_alloc_disk(struct nvme_ctrl *ctrl,
         |                                         ~~~~~~~~~~~~~~~~~~^~~~
   drivers/nvme/host/core.c:3759:38: error: passing argument 2 of 'nvme_mpath_alloc_disk' from incompatible pointer type [-Werror=incompatible-pointer-types]
    3759 |  ret = nvme_mpath_alloc_disk(subsys, ctrl, head);
         |                                      ^~~~
         |                                      |
         |                                      struct nvme_ctrl *
   In file included from drivers/nvme/host/core.c:25:
   drivers/nvme/host/nvme.h:820:24: note: expected 'struct nvme_ns_head *' but argument is of type 'struct nvme_ctrl *'
     820 |   struct nvme_ns_head *head)
         |   ~~~~~~~~~~~~~~~~~~~~~^~~~
>> drivers/nvme/host/core.c:3759:8: error: too many arguments to function 'nvme_mpath_alloc_disk'
    3759 |  ret = nvme_mpath_alloc_disk(subsys, ctrl, head);
         |        ^~~~~~~~~~~~~~~~~~~~~
   In file included from drivers/nvme/host/core.c:25:
   drivers/nvme/host/nvme.h:819:19: note: declared here
     819 | static inline int nvme_mpath_alloc_disk(struct nvme_ctrl *ctrl,
         |                   ^~~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors


vim +/nvme_mpath_alloc_disk +3759 drivers/nvme/host/core.c

  3735	
  3736		head = kzalloc(size, GFP_KERNEL);
  3737		if (!head)
  3738			goto out;
  3739		ret = ida_alloc_min(&subsys->ns_ida, 1, GFP_KERNEL);
  3740		if (ret < 0)
  3741			goto out_free_head;
  3742		head->instance = ret;
  3743		INIT_LIST_HEAD(&head->list);
  3744		ret = init_srcu_struct(&head->srcu);
  3745		if (ret)
  3746			goto out_ida_remove;
  3747		head->subsys = subsys;
  3748		head->ns_id = nsid;
  3749		head->ids = *ids;
  3750		kref_init(&head->ref);
  3751	
  3752		if (head->ids.csi) {
  3753			ret = nvme_get_effects_log(ctrl, head->ids.csi, &head->effects);
  3754			if (ret)
  3755				goto out_cleanup_srcu;
  3756		} else
  3757			head->effects = ctrl->effects;
  3758	
> 3759		ret = nvme_mpath_alloc_disk(subsys, ctrl, head);
  3760		if (ret)
  3761			goto out_cleanup_srcu;
  3762	
  3763		list_add_tail(&head->entry, &subsys->nsheads);
  3764	
  3765		kref_get(&subsys->ref);
  3766	
  3767		return head;
  3768	out_cleanup_srcu:
  3769		cleanup_srcu_struct(&head->srcu);
  3770	out_ida_remove:
  3771		ida_free(&subsys->ns_ida, head->instance);
  3772	out_free_head:
  3773		kfree(head);
  3774	out:
  3775		if (ret > 0)
  3776			ret = blk_status_to_errno(nvme_error_status(ret));
  3777		return ERR_PTR(ret);
  3778	}
  3779	

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ