ext4 recently grew a feature to run without journalling, which is kinda neat.
While thinking about what it might take to do such a thing for xfs, because running without a log is certainly interesting for benchmarking if nothing else, I realized there’s a pretty simple way to do this without requiring any disruptive code changes:
# echo "0 67108864 zero" | dmsetup create zero1
# mkfs.xfs -l logdev=/dev/mapper/zero1 /dev/sdb1
# mount -o logdev=/dev/mapper/zero1 /dev/sdb1 /mnt/test
voila, most log overhead is gone. The zero dm target soaks up the log writes w/o much overhead, and when mounting, xfs handles a zeroed log just fine. In case it’s not obvious, of course this doesn’t give you any sort of filesystem integrity when you crash…