[SRU][Bionic][PATCH 0/1] Fix md raid deadlock during resync

Connor Kuehl connor.kuehl at canonical.com
Mon Jul 15 22:57:23 UTC 2019


[Impact]

* If regular and resync IO happen at the same time during a regular IO
  split, the split bio will wait until resync IO finishes while at the
  same time the resync IO is waiting for regular IO to finish. This
  results in deadlock.

* I believe this only impacts Bionic as Disco+ already contains this
  commit. Xenial doesn't contain the commit that this one fixes.

[Test Case]

The test kernel containing this commit received positive feedback in the
launchpad bug.

>From the launchpad bug comment #10:

"For reproduce on 4.15.0-50-generic: Make new raid-10, add some io fio/dd, 
unpack anaconda archives, after minute or two deadlocked"

[Regression Potential]

* This fix has been in mainline since December 2018 and I don't see any
  fixup commits upstream referencing this one. The small number of
  changes in this commit seem reasonable for managing the `nr_pending`
  adjustments which preclude either regular or resync IO.

Guoqing Jiang (1):
  md: fix raid10 hang issue caused by barrier

 drivers/md/raid10.c | 4 ++++
 1 file changed, 4 insertions(+)

-- 
2.20.1




More information about the kernel-team mailing list