=== FSX

Links: +
link:https://github.com/asomers/fsx-rs[GitHub] URL: https://github.com/asomers/fsx-rs[]
link:https://www.freshports.org/devel/fsx/[FreshPorts] URL: https://www.freshports.org/devel/fsx/[]

Contact: Alan Somers <asomers@freebsd.org>

The venerable FSX (File System eXerciser) tool, first written at Apple Computer in the nineties, has been a part of FreeBSD since 5.0.
It stress tests file systems with a stream of randomly generated operations, verifying file data after every read.
However, it has never been installed as part of the OS; it only exists in the source tree.
That makes it difficult to use in CI pipelines.
It has some other limitations, too.

So this quarter I rewrote the entire tool in Rust.
The rewrite is byte-for-byte compatible with the original, given identical seed values.
Future versions will break backwards-compatibility, however, in order to add new features like `fspacectl` and `copy_file_range`.
The new version can be found in the ports tree, and in time I'll remove the original.
