zenfs
zenfs copied to clipboard
Support for ZoneFS
It would be beneficial to support ZoneFS as a low-layer interface in addition to libzbd, for comparing performance and allowing the user to utilize zonefs features such as permanent user permission setting.
ZoneFS is documented here: https://www.kernel.org/doc/html/latest/filesystems/zonefs.html
After some refactoring, the support should land in the zbd(enumerating the zones) class and a new zone class implementing the zone operations using the zonefs operations).
- Enumerating the sequential zones is easy as listing files in the seq/ subdirectory
- Zone state and WP can be inferred using the file size
- Block size and zone capacity can be determined using stat(), see the documentation
Max active / open zone limits are not exposed by zonefs , but could be added as zenfs mkfs parameters and stored in the zonefs superblock structure.
The choice of libzbd/raw zoned block device access and zonefs would be added through supporting another uri format: zenfs://zonefs:/path/to/mount/point