linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jeff Mahoney <jeffm@suse.com>
To: Tomokhov Alexander <alexoundos@ya.ru>, linux-btrfs@vger.kernel.org
Subject: Re: Will Btrfs have an official command to "uncow" existing files?
Date: Mon, 22 Aug 2016 16:14:19 -0400	[thread overview]
Message-ID: <57BB5D1B.8040305@suse.com> (raw)
In-Reply-To: <126611471805976@web2j.yandex.ru>


[-- Attachment #1.1: Type: text/plain, Size: 1350 bytes --]

On 8/21/16 2:59 PM, Tomokhov Alexander wrote:
> Btrfs wiki FAQ gives a link to example Python script: https://github.com/stsquad/scripts/blob/master/uncow.py
> 
> But such a crucial and fundamental tool must exist in stock btrfs-progs. Filesystem with CoW technology at it's core must provide user sufficient control over CoW aspects. Running 3rd-party or manually written scripts for filesystem properties/metadata manipulation is not convenient, not safe and definitely not the way it must be done.
> 
> Also is it possible (at least in theory) to "uncow" files being currently opened in-place? Without the trickery with creation & renaming of files or directories. So that running "chattr +C" on a file would be sufficient. If possible, is it going to be implemented?

XFS is looking to do this via fallocate using a flag that all file
systems can choose to honor.  Once that lands, it would make sense for
btrfs to use it as well.  The idea is that when you pass the flag in, we
examine the range and CoW anything that has a refcount != 1.

That code hasn't landed yet though.  The last time I saw it posted was
June.  I don't speak with knowledge of the integration plan, but it
might just be queued up for the next merge window now that the reverse
mapping patches have landed in 4.8.

-Jeff

-- 
Jeff Mahoney
SUSE Labs


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 827 bytes --]

  parent reply	other threads:[~2016-08-22 20:14 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-21 18:59 Will Btrfs have an official command to "uncow" existing files? Tomokhov Alexander
2016-08-22  2:00 ` Duncan
2016-08-22 23:54   ` Tomokhov Alexander
2016-08-22 20:14 ` Jeff Mahoney [this message]
2016-08-22 22:53   ` Tomokhov Alexander
2016-08-22 23:06   ` Darrick J. Wong
2016-08-23  2:43     ` Chris Murphy
2016-08-23 11:23       ` Austin S. Hemmelgarn
2016-08-24 18:34       ` Omar Sandoval
2016-08-24 22:42         ` Darrick J. Wong
2016-08-24 22:47           ` Omar Sandoval
2016-08-23  5:54     ` Dave Chinner
2016-08-24  0:48     ` Jeff Mahoney
2016-08-24  1:03       ` Darrick J. Wong
  -- strict thread matches above, loose matches on Subject: below --
2023-01-22 11:41 Cerem Cem ASLAN
2023-01-22 16:55 ` Forza
2023-01-22 20:27 ` Goffredo Baroncelli
2023-01-23  0:20   ` Zygo Blaxell
2023-01-30 16:39     ` Patrik Lundquist
2023-01-31 11:25       ` Patrik Lundquist
2023-01-23  7:17 ` Christoph Hellwig
2023-01-29  0:40   ` Zygo Blaxell

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=57BB5D1B.8040305@suse.com \
    --to=jeffm@suse.com \
    --cc=alexoundos@ya.ru \
    --cc=linux-btrfs@vger.kernel.org \
    /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;
as well as URLs for NNTP newsgroup(s).