[Top] [All Lists]

[PATCH] xfstests: btrfs/003: stat the dev we're removing to make sure it

To: <linux-btrfs@xxxxxxxxxxxxxxx>, <xfs@xxxxxxxxxxx>
Subject: [PATCH] xfstests: btrfs/003: stat the dev we're removing to make sure its' really gone
From: Josef Bacik <jbacik@xxxxxxxxxxxx>
Date: Wed, 21 Aug 2013 12:03:35 -0400
Delivered-to: xfs@xxxxxxxxxxx
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/simple; d=fusionio.com; s=default; t=1377101017; bh=0hs78mr6YY4Dxx1KjVCXIsQtDi7DnSJi0NvslwmQI04=; h=From:To:Subject:Date; b=EDxAaUH6fAsBSOxzbOCiegTmIjYZIFuqLYrle0f+xhJQkJysjqGS/LB160Bsi5BM4 MRbe0ukNCPg4cbHI44nrTqGAU0LGhcS6s68NsSKjajaeMVotJS98tgx1phKYj2Y2i2 kujSchBYN2xmgwtVT8P3O9ZjLkH9j/Hejx9hSPtM=
I've been periodically failing btrfs/003 because my box sometimes takes a little
longer to unregister the device when we remove it and so the output from btrfs
dev show doesn't match what we are wanting since it still sees the device.  To
fix this just stat and sleep if we still see the device node and only continue
once udev or whatever actually removes the device node so that we don't get
random failures.  Thanks,

Signed-off-by: Josef Bacik <jbacik@xxxxxxxxxxxx>
 tests/btrfs/003 |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/tests/btrfs/003 b/tests/btrfs/003
index 5c88651..dba1a32 100755
--- a/tests/btrfs/003
+++ b/tests/btrfs/003
@@ -145,6 +145,12 @@ _test_replace()
        _devmgt_remove ${DEVHTL}
+       stat $ds >> $seqres.full 2>&1
+       while [ $? -eq 0 ]; do
+               sleep 1
+               stat $ds >> $seqres.full 2>&1
+       done
        $BTRFS_UTIL_PROG fi show $SCRATCH_DEV | grep "Some devices missing" >> 
$seqres.full || _fail \
                                                        "btrfs did not report 
device missing"

<Prev in Thread] Current Thread [Next in Thread>