Message ID | 1445340846-9774-1-git-send-email-bo.li.liu@oracle.com (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
On Tue, Oct 20, 2015 at 07:34:06PM +0800, Liu Bo wrote: > Btrfs now has changed to delete subvolume/snapshot asynchronously, > which means that after umount, if we've already deleted 'ext2_saved', > rollback can still be completed, which should not. > > So this adds a regression test for this. > > Signed-off-by: Liu Bo <bo.li.liu@oracle.com> I'm not sure if this belongs to a new test, but given that this test has very similar steps to existing tests, so I think that's fine. Reviewed-by: Eryu Guan <eguan@redhat.com> > --- > tests/btrfs/012 | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/tests/btrfs/012 b/tests/btrfs/012 > index d513759..b39dec0 100755 > --- a/tests/btrfs/012 > +++ b/tests/btrfs/012 > @@ -112,6 +112,18 @@ diff -r /lib/modules/`uname -r`/ $SCRATCH_MNT/`uname -r`/ 2>&1 | grep -vw "sourc > > _scratch_unmount > > +# Convert it to btrfs, mount it and delete "ext2_saved" > +$BTRFS_CONVERT_PROG $SCRATCH_DEV >> $seqres.full 2>&1 || \ > + _fail "btrfs-convert failed" > +_scratch_mount || _fail "Could not mount new btrfs fs" > +$BTRFS_UTIL_PROG subvolume delete $SCRATCH_MNT/ext2_saved >> $seqres.full 2>&1 || > + _fail "failed to delete ext2_saved subvolume" > +_scratch_unmount > + > +# Now restore the ext4 device, expecting a failure > +$BTRFS_CONVERT_PROG -r $SCRATCH_DEV >> $seqres.full 2>&1 > +[ $? -eq 1 ] || _fail "Failure is expected, but btrfs-convert returns with rollback complete" > + > # success, all done > status=0 > exit > -- > 1.8.2.1 > > -- > To unsubscribe from this list: send the line "unsubscribe fstests" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/tests/btrfs/012 b/tests/btrfs/012 index d513759..b39dec0 100755 --- a/tests/btrfs/012 +++ b/tests/btrfs/012 @@ -112,6 +112,18 @@ diff -r /lib/modules/`uname -r`/ $SCRATCH_MNT/`uname -r`/ 2>&1 | grep -vw "sourc _scratch_unmount +# Convert it to btrfs, mount it and delete "ext2_saved" +$BTRFS_CONVERT_PROG $SCRATCH_DEV >> $seqres.full 2>&1 || \ + _fail "btrfs-convert failed" +_scratch_mount || _fail "Could not mount new btrfs fs" +$BTRFS_UTIL_PROG subvolume delete $SCRATCH_MNT/ext2_saved >> $seqres.full 2>&1 || + _fail "failed to delete ext2_saved subvolume" +_scratch_unmount + +# Now restore the ext4 device, expecting a failure +$BTRFS_CONVERT_PROG -r $SCRATCH_DEV >> $seqres.full 2>&1 +[ $? -eq 1 ] || _fail "Failure is expected, but btrfs-convert returns with rollback complete" + # success, all done status=0 exit
Btrfs now has changed to delete subvolume/snapshot asynchronously, which means that after umount, if we've already deleted 'ext2_saved', rollback can still be completed, which should not. So this adds a regression test for this. Signed-off-by: Liu Bo <bo.li.liu@oracle.com> --- tests/btrfs/012 | 12 ++++++++++++ 1 file changed, 12 insertions(+)