mbox series

[0/3] btrfs: fix generic/475 hang

Message ID cover.1689883754.git.josef@toxicpanda.com (mailing list archive)
Headers show
Series btrfs: fix generic/475 hang | expand

Message

Josef Bacik July 20, 2023, 8:12 p.m. UTC
Hello,

With the new GH CI setup we were seeing consistent hangs with generic/475.  This
was a pretty subtle and unique hang that's described in the first patch.  I've
included the patch first to make it easier to backport for those who wish to do
so, this bug has existed forever, though is really very specific to the use of
dmsetup suspend.  Before this patch I couldn't make it through 10 loops of
generic/475 in my VM, with it I've been running it in a loop for an hour with no
problems.  The series is currently going through the CI testing, but I feel
confident in the fix and explanation.  Thanks,

Josef

Josef Bacik (3):
  btrfs: wait for block groups to finish caching during allocation
  btrfs: move comments to btrfs_loop_type definition
  btrfs: cycle through the RAID profiles as a last resort

 fs/btrfs/extent-tree.c | 67 ++++++++++++++++++++++++++++++------------
 1 file changed, 49 insertions(+), 18 deletions(-)

Comments

Christoph Hellwig July 21, 2023, 7:36 a.m. UTC | #1
I've tried to review some of this, but the code is way beyond my
pay grade.  But I can't reproduce the hangs with either all three
or just patches 1 and 2 applied.