All of lore.kernel.org
 help / color / mirror / Atom feed
From: Martin Steigerwald <Martin@lichtvoll.de>
To: Mike Hommey <mh@glandium.org>
Cc: Chris Mason <chris.mason@oracle.com>,
	C Anthony Risinger <anthony@extof.me>,
	Josef Bacik <josef@redhat.com>,
	"linux-btrfs" <linux-btrfs@vger.kernel.org>,
	"linux-fsdevel" <linux-fsdevel@vger.kernel.org>,
	Christoph Hellwig <hch@lst.de>, ssorce <ssorce@redhat.com>
Subject: Re: What to do about subvolumes?
Date: Thu, 9 Dec 2010 20:53:29 +0100	[thread overview]
Message-ID: <201012092053.40494.Martin@lichtvoll.de> (raw)
In-Reply-To: <20101201163157.GB30236@glandium.org>

[-- Attachment #1: Type: Text/Plain, Size: 2618 bytes --]

Am Mittwoch 01 Dezember 2010 schrieb Mike Hommey:
> On Wed, Dec 01, 2010 at 11:01:37AM -0500, Chris Mason wrote:
> > Excerpts from C Anthony Risinger's message of 2010-12-01 09:51:55 
-0500:
> > > On Wed, Dec 1, 2010 at 8:21 AM, Josef Bacik <josef@redhat.com> 
wrote:
> > > > === How do we want subvolumes to work from a user perspective?
> > > > ===
> > > > 
> > > > 1) Users need to be able to create their own subvolumes. Â The
> > > > permission semantics will be absolutely the same as creating
> > > > directories, so I don't think this is too tricky. Â We want this
> > > > because you can only take snapshots of subvolumes, and so it is
> > > > important that users be able to create their own discrete
> > > > snapshottable targets.
> > > > 
> > > > 2) Users need to be able to snapshot their subvolumes. Â This is
> > > > basically the same as #1, but it bears repeating.
> > > 
> > > could it be possible to convert a directory into a volume?  or at
> > > least base a snapshot off it?
> > 
> > I'm afraid this turns into the same complexity as creating a new
> > volume and copying all the files/dirs in by hand.
> 
> Except you wouldn't have to copy data, only metadata.

And it could probably be race-free. If I'd  cp -reflink or rsync stuff from 
a real directory to a subvolume and then rename the old directory to an 
other name and the subvolume to the directory name then I might be missing 
files that have been created during the copy process and missing changes to 
files that have been already copied.

What I would like is an easy way to make ~/.kde or whatever a subvolume to 
be able to snapshot it independently while KDE applications or whatever is 
using and writing to it, *without* any userland even noticing it and 
without - except for metadata for managing the subvolume - any additional 
space consumption.

So

deepdance:/#12> btrfs subvolume create /home/martin/.kde
ERROR: '/home/martin/.kde' exists

would just make a subvolume out of ~/.kde even if it needs splitting out 
the tree or even copying the tree data into a new tree.

There are other filesystem operations like btrfs filesystem balance that can 
be expensive as well.

All that said from a user point of view. Maybe technical its not feasible. 
But it would be nice if it can be made feasible without loosing existing 
advantages.

And maybe

deepdance:/> btrfs subvolume create .   
ERROR: '.' exists

should really remain this way ;).

-- 
Martin 'Helios' Steigerwald - http://www.Lichtvoll.de
GPG: 03B0 0D6C 0040 0710 4AFA  B82F 991B EAAC A599 84C7

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

  reply	other threads:[~2010-12-09 19:53 UTC|newest]

Thread overview: 79+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-12-01 14:21 What to do about subvolumes? Josef Bacik
2010-12-01 14:50 ` Mike Hommey
2010-12-01 14:51 ` C Anthony Risinger
2010-12-01 14:51   ` C Anthony Risinger
2010-12-01 16:01   ` Chris Mason
2010-12-01 16:01     ` Chris Mason
2010-12-01 16:03     ` C Anthony Risinger
2010-12-01 16:03       ` C Anthony Risinger
2010-12-01 16:13       ` Chris Mason
2010-12-01 16:13         ` Chris Mason
2010-12-01 16:31     ` Mike Hommey
2010-12-01 16:31       ` Mike Hommey
2010-12-09 19:53       ` Martin Steigerwald [this message]
2010-12-01 16:00 ` Chris Mason
2010-12-01 16:38 ` Hugo Mills
2010-12-01 16:48   ` Gordan Bobic
2010-12-01 16:52   ` Mike Hommey
2010-12-01 16:52   ` C Anthony Risinger
2010-12-01 16:52     ` C Anthony Risinger
2010-12-01 17:38   ` Josef Bacik
2010-12-01 19:35     ` Hugo Mills
2010-12-01 20:24       ` Freddie Cash
2010-12-01 20:24         ` Freddie Cash
2010-12-01 21:28         ` Hugo Mills
2010-12-01 23:32           ` Freddie Cash
2010-12-01 23:32             ` Freddie Cash
2010-12-02  4:46             ` Mike Fedyk
2010-12-02  4:46               ` Mike Fedyk
2010-12-01 18:33 ` Goffredo Baroncelli
2010-12-01 18:36   ` Josef Bacik
2010-12-01 18:48     ` C Anthony Risinger
2010-12-01 18:48       ` C Anthony Risinger
2010-12-01 18:52       ` C Anthony Risinger
2010-12-01 18:52         ` C Anthony Risinger
2010-12-01 19:08         ` Goffredo Baroncelli
2010-12-01 19:44 ` J. Bruce Fields
2010-12-01 19:54   ` Josef Bacik
2010-12-01 20:00     ` J. Bruce Fields
2010-12-01 20:09       ` Josef Bacik
2010-12-01 20:16         ` J. Bruce Fields
2010-12-02  1:52         ` Michael Vrable
2010-12-03 20:53           ` J. Bruce Fields
2010-12-01 20:03 ` Jeff Layton
2010-12-01 20:46   ` Goffredo Baroncelli
2010-12-01 21:06     ` Jeff Layton
2010-12-02  9:26 ` Arne Jansen
2010-12-02  9:49 ` Arne Jansen
2010-12-02 16:11   ` Chris Mason
2010-12-02 17:14     ` David Pottage
     [not found]       ` <AANLkTinBzpoCnci+1a=0pjXbAdQ7mzpdr2k8GOo7HUc8@mail.gmail.com>
2010-12-03 13:47         ` Fwd: " Paweł Brodacki
2010-12-03 20:56       ` J. Bruce Fields
2010-12-03  2:43   ` Phillip Susi
2011-01-31  2:40   ` Ian Kent
2010-12-03  4:25 ` Chris Ball
2010-12-03 14:00   ` Josef Bacik
2010-12-03 21:45 ` Josef Bacik
2010-12-03 22:16   ` J. Bruce Fields
2010-12-03 22:27   ` Dave Chinner
2010-12-03 22:29     ` Chris Mason
2010-12-03 22:45       ` J. Bruce Fields
2010-12-03 23:01         ` Andreas Dilger
2010-12-06 16:48           ` J. Bruce Fields
2010-12-08  6:39             ` Andreas Dilger
2010-12-08 23:07             ` Neil Brown
2010-12-09  4:41               ` Andreas Dilger
2010-12-09 15:19                 ` J. Bruce Fields
2010-12-07 16:52         ` hch
2010-12-07 20:45           ` J. Bruce Fields
2010-12-07 16:51     ` Christoph Hellwig
2010-12-07 17:02       ` Trond Myklebust
2010-12-08 17:16         ` Andreas Dilger
2010-12-08 17:27           ` J. Bruce Fields
2010-12-08 21:18             ` Andreas Dilger
2010-12-04 21:58   ` Mike Fedyk
2010-12-04 21:58     ` Mike Fedyk
2010-12-06 14:27     ` Josef Bacik
2010-12-06 14:27       ` Josef Bacik
2011-01-31  2:56       ` Ian Kent
2010-12-07 16:48 ` Christoph Hellwig

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=201012092053.40494.Martin@lichtvoll.de \
    --to=martin@lichtvoll.de \
    --cc=anthony@extof.me \
    --cc=chris.mason@oracle.com \
    --cc=hch@lst.de \
    --cc=josef@redhat.com \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=mh@glandium.org \
    --cc=ssorce@redhat.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.