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: signature.asc
Description: OpenPGP digital signature

Reply via email to