Re: [PATCH 1/2] btrfs/254: don't leave mount on test fs in case of failure/interruption

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]



On Thu, Feb 20, 2025 at 06:22:57PM +0000, Filipe Manana wrote:
> On Thu, Feb 20, 2025 at 5:03 PM Darrick J. Wong <djwong@xxxxxxxxxx> wrote:
> >
> > On Thu, Feb 20, 2025 at 01:27:32PM +0800, Anand Jain wrote:
> > > On 20/2/25 02:19, fdmanana@xxxxxxxxxx wrote:
> > > > From: Filipe Manana <fdmanana@xxxxxxxx>
> > > >
> > > > If the test fails or is interrupted after mounting $scratch_dev3 inside
> > > > the test filesystem and before unmounting at test_add_device(), we leave
> > > > without being unable to unmount the test filesystem since it has a mount
> > > > inside it. This results in the need to manually unmount $scratch_dev3,
> > > > otherwise a subsequent run of fstests fails since the unmount of the
> > > > test device fails with -EBUSY.
> > > >
> > > > Fix this by unmounting $scratch_dev3 ($seq_mnt) in the _cleanup()
> > > > function.
> > > >
> > > > Signed-off-by: Filipe Manana <fdmanana@xxxxxxxx>
> > > > ---
> > > >   tests/btrfs/254 | 1 +
> > > >   1 file changed, 1 insertion(+)
> > > >
> > > > diff --git a/tests/btrfs/254 b/tests/btrfs/254
> > > > index d9c9eea9..6523389b 100755
> > > > --- a/tests/btrfs/254
> > > > +++ b/tests/btrfs/254
> > > > @@ -21,6 +21,7 @@ _cleanup()
> > > >   {
> > > >     cd /
> > > >     rm -f $tmp.*
> > > > +   $UMOUNT_PROG $seq_mnt > /dev/null 2>&1
> >
> > This should use the _unmount helper that's in for-next.
> 
> Sure, it does the same, except that it redirects stdout and stderr to
> $seqres.full.
> 
> Some tests are still calling  $UMOUNT_PROG directly. And that's often
> what we want, so that if umount fails we get a mismatch with the
> golden output instead of ignoring the failure.
> But in this case it's fine.

<groan> You're right, I'd repressed that Chinner decided to introduce
_unmount so that he could improve logging of unmount failures but then
he only bothered converting tests/{generic,xfs} because he didn't give
a damn about anyone else.

Now fstests is stuck with a half finished conversion and no clarity
about whether the rest of the $UMOUNT_PROG invocations should be
converted to _umount or if those are somehow intentional.

Hey Zorro, do you have any opinion on this?  Should someone just finish
the $UMOUNT_PROG -> _unmount conversion next week?

--D

> Anand, since you've already merged this patch into your repo, can you
> please replace that line with the following?
> 
> _unmount $seq_mnt
> 
> Thanks.
> 
> >
> > --D
> >
> > > >     rm -rf $seq_mnt > /dev/null 2>&1
> > > >     cleanup_dmdev
> > > >   }
> > >
> > >
> > > Reviewed-by: Anand Jain <anand.jain@xxxxxxxxxx>
> > >
> > >
> > >
> 




[Index of Archives]     [Linux Filesystems Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux