Re: [PATCHv2 2/2] blk-mq-dma: bring back p2p request flags

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Keith,

kernel test robot noticed the following build errors:

[auto build test ERROR on axboe-block/for-next]
[also build test ERROR on next-20250903]
[cannot apply to linus/master linux-nvme/for-next hch-configfs/for-next v6.17-rc4]
[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#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Keith-Busch/blk-integrity-enable-p2p-source-and-destination/20250903-040417
base:   https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-next
patch link:    https://lore.kernel.org/r/20250902200121.3665600-3-kbusch%40meta.com
patch subject: [PATCHv2 2/2] blk-mq-dma: bring back p2p request flags
config: microblaze-allnoconfig (https://download.01.org/0day-ci/archive/20250903/202509031816.qq7ODYRv-lkp@xxxxxxxxx/config)
compiler: microblaze-linux-gcc (GCC) 15.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250903/202509031816.qq7ODYRv-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202509031816.qq7ODYRv-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

   In file included from block/bdev.c:15:
>> include/linux/blk-integrity.h:127:20: error: redefinition of 'blk_rq_dma_unmap'
     127 | static inline bool blk_rq_dma_unmap(struct request *req, struct device *dma_dev,
         |                    ^~~~~~~~~~~~~~~~
   In file included from include/linux/blk-integrity.h:7:
   include/linux/blk-mq-dma.h:71:20: note: previous definition of 'blk_rq_dma_unmap' with type 'bool(struct request *, struct device *, struct dma_iova_state *, size_t)' {aka '_Bool(struct request *, struct device *, struct dma_iova_state *, unsigned int)'}
      71 | static inline bool blk_rq_dma_unmap(struct request *req, struct device *dma_dev,
         |                    ^~~~~~~~~~~~~~~~


vim +/blk_rq_dma_unmap +127 include/linux/blk-integrity.h

   101	
   102	/*
   103	 * Return the current bvec that contains the integrity data. bip_iter may be
   104	 * advanced to iterate over the integrity data.
   105	 */
   106	static inline struct bio_vec rq_integrity_vec(struct request *rq)
   107	{
   108		return mp_bvec_iter_bvec(rq->bio->bi_integrity->bip_vec,
   109					 rq->bio->bi_integrity->bip_iter);
   110	}
   111	#else /* CONFIG_BLK_DEV_INTEGRITY */
   112	static inline int blk_get_meta_cap(struct block_device *bdev, unsigned int cmd,
   113					   struct logical_block_metadata_cap __user *argp)
   114	{
   115		return -ENOIOCTLCMD;
   116	}
   117	static inline int blk_rq_count_integrity_sg(struct request_queue *q,
   118						    struct bio *b)
   119	{
   120		return 0;
   121	}
   122	static inline int blk_rq_map_integrity_sg(struct request *q,
   123						  struct scatterlist *s)
   124	{
   125		return 0;
   126	}
 > 127	static inline bool blk_rq_dma_unmap(struct request *req, struct device *dma_dev,
   128			struct dma_iova_state *state, size_t mapped_len)
   129	{
   130		return false;
   131	}
   132	static inline int blk_rq_integrity_map_user(struct request *rq,
   133						    void __user *ubuf,
   134						    ssize_t bytes)
   135	{
   136		return -EINVAL;
   137	}
   138	static inline bool blk_rq_integrity_dma_map_iter_start(struct request *req,
   139			struct device *dma_dev,  struct dma_iova_state *state,
   140			struct blk_dma_iter *iter)
   141	{
   142		return false;
   143	}
   144	static inline bool blk_rq_integrity_dma_map_iter_next(struct request *req,
   145			struct device *dma_dev, struct blk_dma_iter *iter)
   146	{
   147		return false;
   148	}
   149	static inline struct blk_integrity *bdev_get_integrity(struct block_device *b)
   150	{
   151		return NULL;
   152	}
   153	static inline struct blk_integrity *blk_get_integrity(struct gendisk *disk)
   154	{
   155		return NULL;
   156	}
   157	static inline bool
   158	blk_integrity_queue_supports_integrity(struct request_queue *q)
   159	{
   160		return false;
   161	}
   162	static inline unsigned short
   163	queue_max_integrity_segments(const struct request_queue *q)
   164	{
   165		return 0;
   166	}
   167	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki




[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux