All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Heinz Mauelshagen <heinzm@redhat.com>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
	Mike Snitzer <snitzer@kernel.org>
Subject: [snitzer:dm-buffered 7/17] drivers/md/dm-buffered-target.c:453:2: warning: label at end of compound statement is a C2x extension
Date: Mon, 15 Apr 2024 04:55:17 +0800	[thread overview]
Message-ID: <202404150402.CMiozTNP-lkp@intel.com> (raw)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/snitzer/linux.git dm-buffered
head:   28cac58f710bee429b166b4afb5a6450f88ba036
commit: 92101d4f7a11082735b25b2f473fb6804f519460 [7/17] dm buffered: test target buffering all I/O through dm-bufio
config: x86_64-allyesconfig (https://download.01.org/0day-ci/archive/20240415/202404150402.CMiozTNP-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240415/202404150402.CMiozTNP-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/202404150402.CMiozTNP-lkp@intel.com/

All warnings (new ones prefixed by >>):

>> drivers/md/dm-buffered-target.c:453:2: warning: label at end of compound statement is a C2x extension [-Wc2x-extensions]
     453 |         }
         |         ^
   1 warning generated.


vim +453 drivers/md/dm-buffered-target.c

   408	
   409	/* Process I/O on a bio prefetching buffers on a single @bio in a worker. */
   410	static void _process_bio(struct work_struct *work)
   411	{
   412		struct buffered_c *bc = container_of(work, struct buffered_c, buffered_ws);
   413		struct bio *bio;
   414		bool queue, write;
   415		sector_t blocks, sectors, start, end;
   416	
   417		spin_lock(&bc->lock);
   418		bio = bio_list_pop(&bc->bios);
   419		spin_unlock(&bc->lock);
   420	
   421		if (!bio)
   422			return;
   423	
   424		write = false;
   425		start = _to_block(bc, bio->bi_iter.bi_sector);
   426	
   427		/* Prefetch read and partial write buffers */
   428		switch (bio_op(bio)) {
   429		case REQ_OP_READ:
   430			sectors = bio_end_sector(bio) - _to_sector(bc, start);
   431			blocks = _to_block(bc, sectors) + _sector_mod(bc, sectors) ? 1 : 0;
   432			dm_bufio_prefetch(bc->bufio, start, blocks);
   433			break;
   434		case REQ_OP_WRITE:
   435			write = true;
   436			/* Beware of partial block updates. */
   437			if (_sector_mod(bc, bio->bi_iter.bi_sector)) {
   438				dm_bufio_prefetch(bc->bufio, start, 1);
   439				atomic_inc(&bc->stats[S_PREFETCHED_WRITES]);
   440			}
   441			if (_sector_mod(bc, bio_end_sector(bio))) {
   442				end = _to_block(bc, bio_end_sector(bio));
   443				if (start != end) {
   444					dm_bufio_prefetch(bc->bufio, start, 1);
   445					atomic_inc(&bc->stats[S_PREFETCHED_WRITES]);
   446				}
   447			}
   448			break;
   449		case REQ_OP_WRITE_ZEROES:
   450			write = true;
   451			break;
   452		default:
 > 453		}
   454	
   455		__process_bio(bc, bio);
   456	
   457		/* Use spinlock here also as in map function to avoid any memory access reordering issues. */
   458		spin_lock(&bc->lock);
   459		queue = !bio_list_empty(&bc->bios);
   460		spin_unlock(&bc->lock);
   461	
   462		if (queue)
   463			queue_work(bc->buffered_wq, &bc->buffered_ws);
   464	
   465		/* Reschedule the flush thread in case of new write(s). */
   466		if (write)
   467			schedule_delayed_work(&bc->buffered_flush_ws, 2 * HZ);
   468	
   469		cond_resched();
   470	}
   471	

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

                 reply	other threads:[~2024-04-14 20:56 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202404150402.CMiozTNP-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=heinzm@redhat.com \
    --cc=llvm@lists.linux.dev \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=snitzer@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.