XFS Copy-On-Write Support Being Improved, Always CoW Option

Written by Michael Larabel in Linux Storage on 19 February 2019 at 07:43 AM EST. 56 Comments
One of the recent XFS innovations under work and maturing with time has been Copy on Write (CoW) support for this mature Linux file-systems. The XFS CoW support continues to be improved upon and an "always CoW" option is being prepared to always force this behavior.

Christoph Hellwig has been among the XFS developers working on the copy-on-write improvements as well as adding an always_cow sysfs option. The latest XFS CoW patches were sent out on Monday for review.

The always_cow mode forces XFS to never overwrite existing blocks in place. At this time it's largely for assistance in debugging their copy-on-write code but also to prepare for future work like zoned block device support where overwriting blocks shouldn't happen.

The latest XFS CoW patches are available for testing via this Git branch.

With Btrfs adoption not taking off like some had hoped years ago, ZFS not being re-licensed for mainline kernel acceptance, and other options like Bcachefs having yet to prove themselves (or even being mainlined in the case of Bcachefs), the new feature work going into XFS is all the more interesting especially with Red Hat making use of the file-system in their Stratis storage technology. Those wanting to learn more about the current feature developments around XFS can see the LCA2018 video embedded below.

Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week