Building the Linux kernel with Clang and LLVM
 help / color / mirror / Atom feed
* block/blk-merge.c:159:17: error: use of undeclared identifier 'split'
@ 2026-05-01 12:00 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-05-01 12:00 UTC (permalink / raw)
  To: Li kunyu; +Cc: llvm, oe-kbuild-all, 0day robot

tree:   https://github.com/intel-lab-lkp/linux/commits/Li-kunyu/block-blk-iolatency-Add-the-processing-flow-of-the-chained-bio-in-the-QoS-and-define-the-related-types-to-solve-the-prob/20260501-153918
head:   90baba948a48e0504a128c4068cbdcfd0bf4f61e
commit: 90baba948a48e0504a128c4068cbdcfd0bf4f61e block/blk-iolatency: Add the processing flow of the chained bio in the QoS and define the related types to solve the problem of incorrect inflight processing in the QoS. The usage of the done_split_bio abstract function in the blk-iolatency project.
date:   4 hours ago
config: x86_64-kexec (https://download.01.org/0day-ci/archive/20260501/202605011345.UrnDrlLs-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260501/202605011345.UrnDrlLs-lkp@intel.com/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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202605011345.UrnDrlLs-lkp@intel.com/

All errors (new ones prefixed by >>):

>> block/blk-merge.c:159:17: error: use of undeclared identifier 'split'
     159 |                         bio_set_flag(split, BIO_QOS_CHAIN_CHILD);
         |                                      ^
>> block/blk-merge.c:168:1: error: function definition is not allowed here
     168 | {
         | ^
   block/blk-merge.c:203:1: error: function definition is not allowed here
     203 | {
         | ^
   block/blk-merge.c:216:1: error: function definition is not allowed here
     216 | {
         | ^
   block/blk-merge.c:237:1: error: function definition is not allowed here
     237 | {
         | ^
   block/blk-merge.c:291:1: error: function definition is not allowed here
     291 | {
         | ^
   block/blk-merge.c:316:1: error: function definition is not allowed here
     316 | {
         | ^
   block/blk-merge.c:324:1: error: function definition is not allowed here
     324 | {
         | ^
   block/blk-merge.c:343:1: error: function definition is not allowed here
     343 | {
         | ^
   block/blk-merge.c:429:1: error: function definition is not allowed here
     429 | {
         | ^
   block/blk-merge.c:444:1: error: function definition is not allowed here
     444 | {
         | ^
   block/blk-merge.c:456:1: error: function definition is not allowed here
     456 | {
         | ^
   block/blk-merge.c:486:1: error: function definition is not allowed here
     486 | {
         | ^
   block/blk-merge.c:494:1: error: function definition is not allowed here
     494 | {
         | ^
   block/blk-merge.c:528:1: error: function definition is not allowed here
     528 | {
         | ^
   block/blk-merge.c:550:1: error: function definition is not allowed here
     550 | {
         | ^
   block/blk-merge.c:580:1: error: function definition is not allowed here
     580 | {
         | ^
   block/blk-merge.c:599:1: error: function definition is not allowed here
     599 | {
         | ^
   block/blk-merge.c:618:1: error: function definition is not allowed here
     618 | {
         | ^
   fatal error: too many errors emitted, stopping now [-ferror-limit=]
   20 errors generated.


vim +/split +159 block/blk-merge.c

   142	
   143	static struct bio *bio_submit_split(struct bio *bio, int split_sectors)
   144	{
   145		if (unlikely(split_sectors < 0)) {
   146			bio->bi_status = errno_to_blk_status(split_sectors);
   147			bio_endio(bio);
   148			return NULL;
   149		}
   150	
   151		if (split_sectors) {
   152			bio = bio_submit_split_bioset(bio, split_sectors,
   153					&bio->bi_bdev->bd_disk->bio_split);
   154			if (bio) {
   155				bio->bi_opf |= REQ_NOMERGE;
   156				/* Fix the issue where the inflight statistics
   157				 * of the chained bio in the QoS are incorrect.
   158				 */
 > 159				bio_set_flag(split, BIO_QOS_CHAIN_CHILD);
   160		}
   161	
   162		return bio;
   163	}
   164	
   165	static struct bio *__bio_split_discard(struct bio *bio,
   166			const struct queue_limits *lim, unsigned *nsegs,
   167			unsigned int max_sectors)
 > 168	{
   169		unsigned int max_discard_sectors, granularity;
   170		sector_t tmp;
   171		unsigned split_sectors;
   172	
   173		*nsegs = 1;
   174	
   175		granularity = max(lim->discard_granularity >> 9, 1U);
   176	
   177		max_discard_sectors = min(max_sectors, bio_allowed_max_sectors(lim));
   178		max_discard_sectors -= max_discard_sectors % granularity;
   179		if (unlikely(!max_discard_sectors))
   180			return bio;
   181	
   182		if (bio_sectors(bio) <= max_discard_sectors)
   183			return bio;
   184	
   185		split_sectors = max_discard_sectors;
   186	
   187		/*
   188		 * If the next starting sector would be misaligned, stop the discard at
   189		 * the previous aligned sector.
   190		 */
   191		tmp = bio->bi_iter.bi_sector + split_sectors -
   192			((lim->discard_alignment >> 9) % granularity);
   193		tmp = sector_div(tmp, granularity);
   194	
   195		if (split_sectors > tmp)
   196			split_sectors -= tmp;
   197	
   198		return bio_submit_split(bio, split_sectors);
   199	}
   200	

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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2026-05-01 12:00 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-01 12:00 block/blk-merge.c:159:17: error: use of undeclared identifier 'split' kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox