Blog/Btrfs-progs v5.17 released

From Forza's ramblings

2022-04-26: Btrfs-progs v5.17 was released![edit | edit source]

A large computer with vacuum tubes, input station and cabling along a wall
Colossus Computer, Bletchley Park. The Colossus machines were electronic computing devices used by British codebreakers to read encrypted German wireless messages during World War II.

A new version of btrfs-progs was just released to match the Linux kernel 5.17.

It has a mix of fixes and new features. Notably added support for changing compression back to default or NOCOMPRESS using btrfs property set.

Some exciting work has been done towards the possibility to change checksum algorithm on existing filesystems. Until now it's only been possible using mkfs.btrfs --csum

Source code can be downloaded from https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/btrfs-progs/ as well as from https://github.com/kdave/btrfs-progs

The announcement is available on the Btrfs mailing list https://lore.kernel.org/linux-btrfs/20220426172403.27553-1-dsterba@suse.com/T/

Changelog[edit | edit source]

Check:

  • repair wrong num_devices in superblock
    • recognize overly long xattr names
    • fix wrong total bytes check for seed device
    • auto-repair on read on RAID56
  • property set: unify handling of empty value to mean default, changed meaning for property 'compression' to allow reset to default and to set NOCOMPRESS, since kernel 5.14

Fixes:

  • dump-tree: print fs-verity items
  • fix location of system chunk on zoned filesystem
  • do not allow setting seeding flag on a filesystem with dirty log
  • mkfs and subpage support: use sectorsize as nodesize fallback for mixed profiles
  • preparatory work for extent tree v2, global roots
  • experimental feature (unstable interface, not built by default, do not use for production):
    • btrfstune: option --csum to switch checksum algorithm

Other:

  • cleanups, refactoring
  • update documentation build, remove asciidocs leftovers
  • update fssum to consider xattrs
  • add fsstress