Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 29 Sep 2011 17:40:43 +0200
From:      Attilio Rao <attilio@freebsd.org>
To:        Kirk McKusick <mckusick@mckusick.com>
Cc:        Garrett Cooper <yanegomi@gmail.com>, freebsd-fs@freebsd.org, Xin LI <delphij@freebsd.org>
Subject:   Re: Need to force sync(2) before umounting UFS1 filesystems?
Message-ID:  <CAJ-FndDxsVYkPQfqiYfshh%2BkpCyfbGTL0m%2BoCN37qXyjAucM6g@mail.gmail.com>
In-Reply-To: <201109291531.p8TFVRka077669@chez.mckusick.com>
References:  <CAJ-FndA=769o9_FgA0vXTKFbnxCSaJ_5XUiAsYpa3vCAQBLH7Q@mail.gmail.com> <201109291531.p8TFVRka077669@chez.mckusick.com>

next in thread | previous in thread | raw e-mail | index | archive | help
2011/9/29 Kirk McKusick <mckusick@mckusick.com>:
>> Date: Thu, 29 Sep 2011 12:04:24 +0200
>> From: Attilio Rao <attilio@freebsd.org>
>> To: Kirk McKusick <mckusick@mckusick.com>
>> Cc: Garrett Cooper <yanegomi@gmail.com>, freebsd-fs@freebsd.org,
>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 Xin LI <delphij@freebsd.org>
>> Subject: Re: Need to force sync(2) before umounting UFS1 filesystems?
>>
>> 2011/9/29 Kirk McKusick <mckusick@mckusick.com>:
>> > Hi Attilio,
>> >
>> > I have been looking into the problem described below and since you
>> > appear to be the person that put in the change in question, I would
>> > like to get you opinion on what (if anything) should be changed here.
>>
>> Kirk,
>> please note that I didn't add/change anything wrt. that codepath.
>>
>> In the old code it was present a lockmgr() acquisition with LK_DRAIN
>> and LK_NOWAIT. This means that if the lockmgr() lock on the struct
>> mount was already held by any other consumer it was going to fallback
>> in the codepath you outlined in the patch immediately, rather than
>> just sleeping (and note that LK_NOWAIT was just passed in the case of
>> a non-forced unmount).
>>
>> Said that, I don't really have an objection with making the forced
>> unmount case as the default, but I still didn't go through the whole
>> thread you outlined and I don't have any context on it, thus I'm not
>> sure if this is the right approach or not.
>>
>> If you want to share more context on the problem you are trying to
>> solve by switching that policy we may discuss this too, but in general
>> I don't have a problem about adopting forced unmount policy on unmount
>> for all the cases.
>>
>> Attilio
>> --
>> Peace can only be achieved by understanding - A. Einstein
>
> Thanks for providing a bit more of the history on this codepath.
>
> Since 9-stable has now been branched, I believe that the best path
> forward is to check this change into head and let it sit there for
> several months so that we can get some experience with it. If it
> causes folks problems we can back it out. If it does not cause
> problems, then we can MFC it to 9-stable.
>
> Does this seem like a reasonable approach?

In general yes, but I'd like to understand why unmount should fail so
much with SU... do we do extended period with vfs_busy()'ed
filesystem?

I need more context here, likely I'd need to look into the PRs too
before to give an informative answer.

Attilio


--=20
Peace can only be achieved by understanding - A. Einstein



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-FndDxsVYkPQfqiYfshh%2BkpCyfbGTL0m%2BoCN37qXyjAucM6g>