* [android-common:android15-6.6 0/4] drivers/md/md.c:564:21-22: Unneeded semicolon
@ 2025-05-27 2:47 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-05-27 2:47 UTC (permalink / raw)
To: cros-kernel-buildreports; +Cc: oe-kbuild-all
tree: https://android.googlesource.com/kernel/common android15-6.6
head: 9f62a273a8443aa2d97898c5c473974ec3ea77d1
commit: 2d0738a8322bf4e5bfe693d16b3111928a9ccfbf [0/4] md: fix deadlock between mddev_suspend and flush bio
config: i386-randconfig-054-20250527 (https://download.01.org/0day-ci/archive/20250527/202505271000.MjXIdIck-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
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/202505271000.MjXIdIck-lkp@intel.com/
cocci warnings: (new ones prefixed by >>)
>> drivers/md/md.c:564:21-22: Unneeded semicolon
vim +564 drivers/md/md.c
532
533 static void md_submit_flush_data(struct work_struct *ws)
534 {
535 struct mddev *mddev = container_of(ws, struct mddev, flush_work);
536 struct bio *bio = mddev->flush_bio;
537
538 /*
539 * must reset flush_bio before calling into md_handle_request to avoid a
540 * deadlock, because other bios passed md_handle_request suspend check
541 * could wait for this and below md_handle_request could wait for those
542 * bios because of suspend check
543 */
544 spin_lock_irq(&mddev->lock);
545 mddev->prev_flush_start = mddev->start_flush;
546 mddev->flush_bio = NULL;
547 spin_unlock_irq(&mddev->lock);
548 wake_up(&mddev->sb_wait);
549
550 if (bio->bi_iter.bi_size == 0) {
551 /* an empty barrier - all done */
552 bio_endio(bio);
553 } else {
554 bio->bi_opf &= ~REQ_PREFLUSH;
555
556 /*
557 * make_requst() will never return error here, it only
558 * returns error in raid5_make_request() by dm-raid.
559 * Since dm always splits data and flush operation into
560 * two separate io, io size of flush submitted by dm
561 * always is 0, make_request() will not be called here.
562 */
563 if (WARN_ON_ONCE(!mddev->pers->make_request(mddev, bio)))
> 564 bio_io_error(bio);;
565 }
566
567 /* The pair is percpu_ref_get() from md_flush_request() */
568 percpu_ref_put(&mddev->active_io);
569 }
570
--
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:[~2025-05-27 2:48 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-27 2:47 [android-common:android15-6.6 0/4] drivers/md/md.c:564:21-22: Unneeded semicolon kernel test robot
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.