Linux Btrfs filesystem development
 help / color / mirror / Atom feed
From: Chris Mason <clm@fb.com>
To: <dsterba@suse.cz>, David Sterba <dsterba@suse.cz>
Cc: Wang Shilong <wangsl.fnst@cn.fujitsu.com>,
	Roman Mamedov <rm@romanrm.net>, <linux-btrfs@vger.kernel.org>,
	Alex Lyakas <alex.btrfs@zadarastorage.com>
Subject: Re: [PATCH] btrfs-progs: add options to sync filesystem after subvol delete
Date: Tue, 10 Dec 2013 13:24:13 -0500	[thread overview]
Message-ID: <20131210182412.23415.32744@ret> (raw)
In-Reply-To: <20131210173628.GH10658@suse.cz>

Quoting David Sterba (2013-12-10 12:36:28)
> On Tue, Dec 10, 2013 at 08:17:07AM -0500, Chris Mason wrote:
> > Quoting David Sterba (2013-12-09 18:32:45)
> > > On Mon, Dec 02, 2013 at 05:02:49PM +0800, Wang Shilong wrote:
> > > > >So an enahced interface could look like this:
> > > > >
> > > > >subvol delete:
> > > > >--commit-each - run the ioc sync/wait ioctl after each delete ioctl
> > > > >--commit-after - dtto but sync/wait after all are deleted
> > > > >--wait-for-cleanup - wait until all given subvols are cleaned
> > > > >
> > > > >'filesystem sync' exteded to wait for subvol cleanup has following
> > > > >cases:
> > > > >- wait for a specific subvolume to be cleaned
> > 
> > It may be hard to wait for a specific subvolume from btrfs fi sync.
> > You'd have to know the id, or have an interface that shows a list of ids
> > currently under deletion (not a bad idea ;)
> 
> It is there, 'btrfs subvol list -d /path', but I'd rather not let
> everybody parse output the output for a simple check.

Aha ;) Yeah, that's what I was thinking.  It's possible to find but hard
enough that nobody would be happy using it.

> 
> > > > >- wait for all currently deleted, do not care if more subvols are
> > > > >   deleted in the meantime
> > > > >- wait until there are no subvolumes left to clean
> > > > I think it is unnecessary to add such options for 'filesystem sync'.
> > > > we may wait a long time until all subvolume deletion are finished as
> > > > async subvolume deletion is implemented in cleaner thread.:-)
> > > 
> > > I mean that 'filesystem sync' will stay as it is now, but will be
> > > enhanced with a few options to further specify what else should be
> > > synced.
> > 
> > It's more natural to have the waiting in the subvol delete command, but
> > I'm not against adding a few ways to wait in btrfs fi sync too, as long
> > as they share the same core implementation.
> 
> Yeah it's natural and I guess it'll be the most frequent type of use.
> I've tried to think of the possible uses so we don't miss anything
> during design phase.
> 
> Knowing the ID is necessary, the subvolume path is lost at deletion
> time, but let's say that the ID is available somehow, eg from
> application logs.
> 
> I have a prototype for that, there's a separate subcommand to do just
> the waiting for a given subvolume list id to be cleaned up (but could
> be merged to fi sync if desired). It's built around the SEARCH ioctl and
> does not need kernel support.

So the part where I think we agree is I don't think the kernel subvol
deletion ioctl should do the waiting.  Exactly how the progs wait is a
different question.

-chris


  reply	other threads:[~2013-12-10 18:25 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-28 16:59 [PATCH] btrfs-progs: add options to sync filesystem after subvol delete David Sterba
2013-11-28 19:36 ` Roman Mamedov
2013-11-29  2:04   ` Wang Shilong
2013-11-29 17:37     ` David Sterba
2013-12-02  9:02       ` Wang Shilong
2013-12-09 23:32         ` David Sterba
2013-12-10 13:17           ` Chris Mason
2013-12-10 17:36             ` David Sterba
2013-12-10 18:24               ` Chris Mason [this message]
2013-12-12 18:07                 ` David Sterba
2013-11-29  5:13 ` Miao Xie
2013-11-29 17:05   ` David Sterba
2013-11-29  8:05 ` Anand Jain

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20131210182412.23415.32744@ret \
    --to=clm@fb.com \
    --cc=alex.btrfs@zadarastorage.com \
    --cc=dsterba@suse.cz \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=rm@romanrm.net \
    --cc=wangsl.fnst@cn.fujitsu.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox