[linux-nvme:nvme-5.18 6/6] drivers/nvme/host/nvme.h:858: multiple definition of `nvme_mpath_update'; drivers/nvme/host/core.o:drivers/nvme/host/nvme.h:858: first defined here
kernel test robot
lkp at intel.com
Wed Mar 23 16:49:26 PDT 2022
tree: git://git.infradead.org/nvme.git nvme-5.18
head: d50c992edf10b95d2034097405c94fecfbe1ef7f
commit: d50c992edf10b95d2034097405c94fecfbe1ef7f [6/6] nvme-multipath: fix hang when disk goes live over reconnect
config: i386-randconfig-a003 (https://download.01.org/0day-ci/archive/20220324/202203240715.lM0ACDqk-lkp@intel.com/config)
compiler: gcc-9 (Ubuntu 9.4.0-1ubuntu1~20.04) 9.4.0
reproduce (this is a W=1 build):
git remote add linux-nvme git://git.infradead.org/nvme.git
git fetch --no-tags linux-nvme nvme-5.18
git checkout d50c992edf10b95d2034097405c94fecfbe1ef7f
# save the config file to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp at intel.com>
All error/warnings (new ones prefixed by >>):
ld: drivers/nvme/host/ioctl.o: in function `nvme_mpath_update':
>> drivers/nvme/host/nvme.h:858: multiple definition of `nvme_mpath_update'; drivers/nvme/host/core.o:drivers/nvme/host/nvme.h:858: first defined here
ld: drivers/nvme/host/constants.o: in function `nvme_mpath_update':
>> drivers/nvme/host/nvme.h:858: multiple definition of `nvme_mpath_update'; drivers/nvme/host/core.o:drivers/nvme/host/nvme.h:858: first defined here
ld: drivers/nvme/host/trace.o: in function `nvme_mpath_update':
>> drivers/nvme/host/nvme.h:858: multiple definition of `nvme_mpath_update'; drivers/nvme/host/core.o:drivers/nvme/host/nvme.h:858: first defined here
ld: drivers/nvme/host/fault_inject.o: in function `nvme_mpath_update':
>> drivers/nvme/host/nvme.h:858: multiple definition of `nvme_mpath_update'; drivers/nvme/host/core.o:drivers/nvme/host/nvme.h:858: first defined here
--
In file included from drivers/nvme/host/core.c:25:
>> drivers/nvme/host/nvme.h:856:6: warning: no previous prototype for 'nvme_mpath_update' [-Wmissing-prototypes]
856 | void nvme_mpath_update(struct nvme_ctrl *ctrl)
| ^~~~~~~~~~~~~~~~~
--
In file included from drivers/nvme/target/loop.c:13:
>> drivers/nvme/target/../host/nvme.h:856:6: warning: no previous prototype for 'nvme_mpath_update' [-Wmissing-prototypes]
856 | void nvme_mpath_update(struct nvme_ctrl *ctrl)
| ^~~~~~~~~~~~~~~~~
vim +858 drivers/nvme/host/nvme.h
804
805 #else
806 #define multipath false
807 static inline bool nvme_ctrl_use_ana(struct nvme_ctrl *ctrl)
808 {
809 return false;
810 }
811 static inline void nvme_failover_req(struct request *req)
812 {
813 }
814 static inline void nvme_kick_requeue_lists(struct nvme_ctrl *ctrl)
815 {
816 }
817 static inline int nvme_mpath_alloc_disk(struct nvme_ctrl *ctrl,
818 struct nvme_ns_head *head)
819 {
820 return 0;
821 }
822 static inline void nvme_mpath_add_disk(struct nvme_ns *ns,
823 struct nvme_id_ns *id)
824 {
825 }
826 static inline void nvme_mpath_remove_disk(struct nvme_ns_head *head)
827 {
828 }
829 static inline bool nvme_mpath_clear_current_path(struct nvme_ns *ns)
830 {
831 return false;
832 }
833 static inline void nvme_mpath_revalidate_paths(struct nvme_ns *ns)
834 {
835 }
836 static inline void nvme_mpath_clear_ctrl_paths(struct nvme_ctrl *ctrl)
837 {
838 }
839 static inline void nvme_mpath_shutdown_disk(struct nvme_ns_head *head)
840 {
841 }
842 static inline void nvme_trace_bio_complete(struct request *req)
843 {
844 }
845 static inline void nvme_mpath_init_ctrl(struct nvme_ctrl *ctrl)
846 {
847 }
848 static inline int nvme_mpath_init_identify(struct nvme_ctrl *ctrl,
849 struct nvme_id_ctrl *id)
850 {
851 if (ctrl->subsys->cmic & NVME_CTRL_CMIC_ANA)
852 dev_warn(ctrl->device,
853 "Please enable CONFIG_NVME_MULTIPATH for full support of multi-port devices.\n");
854 return 0;
855 }
> 856 void nvme_mpath_update(struct nvme_ctrl *ctrl)
857 {
> 858 }
859 static inline void nvme_mpath_uninit(struct nvme_ctrl *ctrl)
860 {
861 }
862 static inline void nvme_mpath_stop(struct nvme_ctrl *ctrl)
863 {
864 }
865 static inline void nvme_mpath_unfreeze(struct nvme_subsystem *subsys)
866 {
867 }
868 static inline void nvme_mpath_wait_freeze(struct nvme_subsystem *subsys)
869 {
870 }
871 static inline void nvme_mpath_start_freeze(struct nvme_subsystem *subsys)
872 {
873 }
874 static inline void nvme_mpath_default_iopolicy(struct nvme_subsystem *subsys)
875 {
876 }
877 #endif /* CONFIG_NVME_MULTIPATH */
878
--
0-DAY CI Kernel Test Service
https://01.org/lkp
More information about the Linux-nvme
mailing list