The UNMAP command was a no-op in all backing stores, causing unmapped
blocks to retain stale data instead of returning zeros per SCSI spec.
- Implement Unmap in FileBackingStore to zero out unmapped blocks
- Implement Unmap in IOUringBackingStore to zero out unmapped blocks
- Enable Unmap in RemBackingStore (was commented out)
- Change UnmapBlockDescriptor.TL from uint32 to uint64 to prevent
integer overflow when converting block count to byte length with
large block shifts
Fixes#119
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Convert constant to var so that it can be configured from backend
- Add options to disable persistent reservation and ORWrite16 commands
Signed-off-by: Utkarsh Mani Tripathi <utkarsh.tripathi@mayadata.io>