Hi Xianting, Thank you for the patch! Yet something to improve: [auto build test ERROR on block/for-next] [also build test ERROR on linux/master linus/master v5.9-rc1 next-20200821] [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/Xianting-Tian/blk-mq-use-BLK_MQ_NO_TAG-for-no-tag/20200824-012255 base: https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-next config: arm64-randconfig-r034-20200824 (attached as .config) compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project b587ca93be114d07ec3bf654add97d7872325281) 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 # install arm64 cross compiling tool for clang build # apt-get install binutils-aarch64-linux-gnu # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@xxxxxxxxx> All error/warnings (new ones prefixed by >>): In file included from drivers/mtd/ubi/block.c:40: >> include/linux/blk-mq.h:572:17: error: use of undeclared identifier 'BLK_MQ_NO_TAG' if (rq->tag != BLK_MQ_NO_TAG) ^ 1 error generated. -- In file included from drivers/ata/ahci_platform.c:17: In file included from include/linux/libata.h:21: In file included from include/scsi/scsi_host.h:11: >> include/linux/blk-mq.h:572:17: error: use of undeclared identifier 'BLK_MQ_NO_TAG' if (rq->tag != BLK_MQ_NO_TAG) ^ drivers/ata/ahci_platform.c:40:2: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] AHCI_SHT(DRV_NAME), ^~~~~~~~~~~~~~~~~~ drivers/ata/ahci.h:385:16: note: expanded from macro 'AHCI_SHT' .can_queue = AHCI_MAX_CMDS, \ ^~~~~~~~~~~~~ drivers/ata/ahci_platform.c:40:2: note: previous initialization is here AHCI_SHT(DRV_NAME), ^~~~~~~~~~~~~~~~~~ drivers/ata/ahci.h:384:2: note: expanded from macro 'AHCI_SHT' ATA_NCQ_SHT(drv_name), \ ^~~~~~~~~~~~~~~~~~~~~ include/linux/libata.h:1417:2: note: expanded from macro 'ATA_NCQ_SHT' __ATA_BASE_SHT(drv_name), \ ^~~~~~~~~~~~~~~~~~~~~~~~ include/linux/libata.h:1399:16: note: expanded from macro '__ATA_BASE_SHT' .can_queue = ATA_DEF_QUEUE, \ ^~~~~~~~~~~~~ drivers/ata/ahci_platform.c:40:2: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] AHCI_SHT(DRV_NAME), ^~~~~~~~~~~~~~~~~~ drivers/ata/ahci.h:389:17: note: expanded from macro 'AHCI_SHT' .sdev_attrs = ahci_sdev_attrs ^~~~~~~~~~~~~~~ drivers/ata/ahci_platform.c:40:2: note: previous initialization is here AHCI_SHT(DRV_NAME), ^~~~~~~~~~~~~~~~~~ drivers/ata/ahci.h:384:2: note: expanded from macro 'AHCI_SHT' ATA_NCQ_SHT(drv_name), \ ^~~~~~~~~~~~~~~~~~~~~ include/linux/libata.h:1418:17: note: expanded from macro 'ATA_NCQ_SHT' .sdev_attrs = ata_ncq_sdev_attrs, \ ^~~~~~~~~~~~~~~~~~ 2 warnings and 1 error generated. -- In file included from drivers/ata/libahci_platform.c:19: In file included from include/linux/libata.h:21: In file included from include/scsi/scsi_host.h:11: >> include/linux/blk-mq.h:572:17: error: use of undeclared identifier 'BLK_MQ_NO_TAG' if (rq->tag != BLK_MQ_NO_TAG) ^ >> drivers/ata/libahci_platform.c:644:42: warning: shift count >= width of type [-Wshift-count-overflow] rc = dma_coerce_mask_and_coherent(dev, DMA_BIT_MASK(64)); ^~~~~~~~~~~~~~~~ include/linux/dma-mapping.h:139:54: note: expanded from macro 'DMA_BIT_MASK' #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) ^ ~~~ 1 warning and 1 error generated. -- In file included from drivers/ata/ahci_tegra.c:23: In file included from drivers/ata/ahci.h:24: In file included from include/linux/libata.h:21: In file included from include/scsi/scsi_host.h:11: >> include/linux/blk-mq.h:572:17: error: use of undeclared identifier 'BLK_MQ_NO_TAG' if (rq->tag != BLK_MQ_NO_TAG) ^ drivers/ata/ahci_tegra.c:477:2: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] AHCI_SHT(DRV_NAME), ^~~~~~~~~~~~~~~~~~ drivers/ata/ahci.h:385:16: note: expanded from macro 'AHCI_SHT' .can_queue = AHCI_MAX_CMDS, \ ^~~~~~~~~~~~~ drivers/ata/ahci_tegra.c:477:2: note: previous initialization is here AHCI_SHT(DRV_NAME), ^~~~~~~~~~~~~~~~~~ drivers/ata/ahci.h:384:2: note: expanded from macro 'AHCI_SHT' ATA_NCQ_SHT(drv_name), \ ^~~~~~~~~~~~~~~~~~~~~ include/linux/libata.h:1417:2: note: expanded from macro 'ATA_NCQ_SHT' __ATA_BASE_SHT(drv_name), \ ^~~~~~~~~~~~~~~~~~~~~~~~ include/linux/libata.h:1399:16: note: expanded from macro '__ATA_BASE_SHT' .can_queue = ATA_DEF_QUEUE, \ ^~~~~~~~~~~~~ drivers/ata/ahci_tegra.c:477:2: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] AHCI_SHT(DRV_NAME), ^~~~~~~~~~~~~~~~~~ drivers/ata/ahci.h:389:17: note: expanded from macro 'AHCI_SHT' .sdev_attrs = ahci_sdev_attrs ^~~~~~~~~~~~~~~ drivers/ata/ahci_tegra.c:477:2: note: previous initialization is here AHCI_SHT(DRV_NAME), ^~~~~~~~~~~~~~~~~~ drivers/ata/ahci.h:384:2: note: expanded from macro 'AHCI_SHT' ATA_NCQ_SHT(drv_name), \ ^~~~~~~~~~~~~~~~~~~~~ include/linux/libata.h:1418:17: note: expanded from macro 'ATA_NCQ_SHT' .sdev_attrs = ata_ncq_sdev_attrs, \ ^~~~~~~~~~~~~~~~~~ 2 warnings and 1 error generated. -- In file included from drivers/ata/ahci_qoriq.c:18: In file included from include/linux/libata.h:21: In file included from include/scsi/scsi_host.h:11: >> include/linux/blk-mq.h:572:17: error: use of undeclared identifier 'BLK_MQ_NO_TAG' if (rq->tag != BLK_MQ_NO_TAG) ^ drivers/ata/ahci_qoriq.c:160:2: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] AHCI_SHT(DRV_NAME), ^~~~~~~~~~~~~~~~~~ drivers/ata/ahci.h:385:16: note: expanded from macro 'AHCI_SHT' .can_queue = AHCI_MAX_CMDS, \ ^~~~~~~~~~~~~ drivers/ata/ahci_qoriq.c:160:2: note: previous initialization is here AHCI_SHT(DRV_NAME), ^~~~~~~~~~~~~~~~~~ drivers/ata/ahci.h:384:2: note: expanded from macro 'AHCI_SHT' ATA_NCQ_SHT(drv_name), \ ^~~~~~~~~~~~~~~~~~~~~ include/linux/libata.h:1417:2: note: expanded from macro 'ATA_NCQ_SHT' __ATA_BASE_SHT(drv_name), \ ^~~~~~~~~~~~~~~~~~~~~~~~ include/linux/libata.h:1399:16: note: expanded from macro '__ATA_BASE_SHT' .can_queue = ATA_DEF_QUEUE, \ ^~~~~~~~~~~~~ drivers/ata/ahci_qoriq.c:160:2: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] AHCI_SHT(DRV_NAME), ^~~~~~~~~~~~~~~~~~ drivers/ata/ahci.h:389:17: note: expanded from macro 'AHCI_SHT' .sdev_attrs = ahci_sdev_attrs ^~~~~~~~~~~~~~~ drivers/ata/ahci_qoriq.c:160:2: note: previous initialization is here AHCI_SHT(DRV_NAME), ^~~~~~~~~~~~~~~~~~ drivers/ata/ahci.h:384:2: note: expanded from macro 'AHCI_SHT' ATA_NCQ_SHT(drv_name), \ ^~~~~~~~~~~~~~~~~~~~~ include/linux/libata.h:1418:17: note: expanded from macro 'ATA_NCQ_SHT' .sdev_attrs = ata_ncq_sdev_attrs, \ ^~~~~~~~~~~~~~~~~~ drivers/ata/ahci_qoriq.c:277:21: warning: cast to smaller integer type 'enum ahci_qoriq_type' from 'const void *' [-Wvoid-pointer-to-enum-cast] qoriq_priv->type = (enum ahci_qoriq_type)of_id->data; ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3 warnings and 1 error generated. -- In file included from drivers/scsi/scsi_sysfs.c:19: In file included from include/scsi/scsi_host.h:11: >> include/linux/blk-mq.h:572:17: error: use of undeclared identifier 'BLK_MQ_NO_TAG' if (rq->tag != BLK_MQ_NO_TAG) ^ drivers/scsi/scsi_sysfs.c:373:1: warning: format specifies type 'short' but the argument has type 'int' [-Wformat] shost_rd_attr(can_queue, "%hd\n"); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ %d drivers/scsi/scsi_sysfs.c:176:45: note: expanded from macro 'shost_rd_attr' #define shost_rd_attr(field, format_string) \ ^ drivers/scsi/scsi_sysfs.c:173:2: note: expanded from macro '\ shost_rd_attr2' shost_show_function(name, field, format_string) \ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/scsi_sysfs.c:165:43: note: expanded from macro 'shost_show_function' return snprintf (buf, 20, format_string, shost->field); \ ~~~~~~~~~~~~~ ^~~~~~~~~~~~ 1 warning and 1 error generated. -- In file included from drivers/scsi/scsi_sysfs.c:19: In file included from include/scsi/scsi_host.h:11: >> include/linux/blk-mq.h:572:17: error: use of undeclared identifier 'BLK_MQ_NO_TAG' if (rq->tag != BLK_MQ_NO_TAG) ^ drivers/scsi/scsi_sysfs.c:373:1: warning: format specifies type 'short' but the argument has type 'int' [-Wformat] shost_rd_attr(can_queue, "%hd\n"); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ %d drivers/scsi/scsi_sysfs.c:176:45: note: expanded from macro 'shost_rd_attr' #define shost_rd_attr(field, format_string) \ ^ drivers/scsi/scsi_sysfs.c:173:2: note: expanded from macro '\ shost_rd_attr2' shost_show_function(name, field, format_string) \ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/scsi_sysfs.c:165:43: note: expanded from macro 'shost_show_function' return snprintf (buf, 20, format_string, shost->field); \ ~~~~~~~~~~~~~ ^~~~~~~~~~~~ drivers/scsi/scsi_sysfs.c:1027:10: fatal error: 'scsi_devinfo_tbl.c' file not found #include "scsi_devinfo_tbl.c" ^~~~~~~~~~~~~~~~~~~~ 1 warning and 2 errors generated. -- In file included from drivers/nvme/host/core.c:8: >> include/linux/blk-mq.h:572:17: error: use of undeclared identifier 'BLK_MQ_NO_TAG' if (rq->tag != BLK_MQ_NO_TAG) ^ In file included from drivers/nvme/host/core.c:29: In file included from drivers/nvme/host/trace.h:175: include/trace/define_trace.h:95:10: fatal error: './trace.h' file not found #include TRACE_INCLUDE(TRACE_INCLUDE_FILE) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/trace/define_trace.h:90:32: note: expanded from macro 'TRACE_INCLUDE' # define TRACE_INCLUDE(system) __TRACE_INCLUDE(system) ^~~~~~~~~~~~~~~~~~~~~~~ include/trace/define_trace.h:87:34: note: expanded from macro '__TRACE_INCLUDE' # define __TRACE_INCLUDE(system) __stringify(TRACE_INCLUDE_PATH/system.h) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/stringify.h:10:27: note: expanded from macro '__stringify' #define __stringify(x...) __stringify_1(x) ^~~~~~~~~~~~~~~~ include/linux/stringify.h:9:29: note: expanded from macro '__stringify_1' #define __stringify_1(x...) #x ^~ <scratch space>:31:1: note: expanded from here "./trace.h" ^~~~~~~~~~~ 2 errors generated. # https://github.com/0day-ci/linux/commit/3f57d0952e89e23c6c5b65b816d3f0a9c9747583 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Xianting-Tian/blk-mq-use-BLK_MQ_NO_TAG-for-no-tag/20200824-012255 git checkout 3f57d0952e89e23c6c5b65b816d3f0a9c9747583 vim +/BLK_MQ_NO_TAG +572 include/linux/blk-mq.h 560 561 #define queue_for_each_hw_ctx(q, hctx, i) \ 562 for ((i) = 0; (i) < (q)->nr_hw_queues && \ 563 ({ hctx = (q)->queue_hw_ctx[i]; 1; }); (i)++) 564 565 #define hctx_for_each_ctx(hctx, ctx, i) \ 566 for ((i) = 0; (i) < (hctx)->nr_ctx && \ 567 ({ ctx = (hctx)->ctxs[(i)]; 1; }); (i)++) 568 569 static inline blk_qc_t request_to_qc_t(struct blk_mq_hw_ctx *hctx, 570 struct request *rq) 571 { > 572 if (rq->tag != BLK_MQ_NO_TAG) 573 return rq->tag | (hctx->queue_num << BLK_QC_T_SHIFT); 574 575 return rq->internal_tag | (hctx->queue_num << BLK_QC_T_SHIFT) | 576 BLK_QC_T_INTERNAL; 577 } 578 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx
Attachment:
.config.gz
Description: application/gzip