CAM Changes
GEOM Changes:
Discover zones, attributes
Possible to expose zones as separate devices?
If using RAID-5, 4+1 disks would expose 1 logical 256*4 = 1G zone. Software would need to manage this logical mapping
How to deal with garbage collections, compaction
There are random I/O zones, usually the lowest LBAs. Sometimes a runt zone at the end as well
Teach ZFS to decide if certain blocks should be written to random I/O zones, and data to sequential zones
Backpointers
Use a logical to physical zone mapping. Copy an old zone and fill gaps with new data, to avoid changing the offsets/checksums of the old data
SMR has multiple zone types, Standard (random), Sequential Write Required (append only), Sequential Write Preferred (slower, write amplifies old data for you). A possible new one called as Circular Buffer Zone (rewrite in the same LBAs).
What about when you swap drives for newer/bigger/different zone sized ones? If the layout of the file system is specific to the drives…
Can you turn on 'SMR Support' for a pool that isn't SMR “yet”
A GEOM layer to coalesce random writes into zones, backed by persistent memory