Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-doc
Path: blob/main/website/content/en/status/report-2023-01-2023-03/fsx.adoc
18096 views
=== 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 <[email protected]>

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.