Dell NativeEdge: Shared Datastore Behavior with Known kernel Defect
Summary: This KB documents the expected and intentional behavior for the NativeEdge v4.2.0.0 release: To prevent VM disk corruption, NativeEdge disables discard="unmap" on shared datastores. As a result, automatic storage reclamation does not occur until the underlying Ubuntu kernel issue is resolved. ...
Symptoms
At NativeEdge v4.2.0.0 release, on "Shared_DataStore," users observe that used storage capacity gradually increases, even when files inside the VM are deleted. And Storage reclamation does not happen automatically.
The behavior is the result of an internal reported observation where in scaled environments with large numbers of VMs deployed to Shared_DataStore, virtual machines may:
- Fail to boot,
- Become stuck at a firmware or bootloader screen,
- Or experience disk I/O errors such as
"Block device libvirt-3-format is ejected."
The issue appeared several hours after successful deployment (commonly ~8 hours).
Cause
NativeEdge v4.2.0.0 release introduced a new VM parameter: discard="unmap"
This was added to support TRIM capability and resolve an earlier customer to reclaim unused space in the VM. However, when VMs are deployed on Shared_DataStore, enabling discard="unmap" leads to VM disk corruption due to a kernel issue in Ubuntu 24.04 affecting block-discard operations on CephFS.
When discard="unmap" was disabled (discard="ignore") for shared storage, all VM TRIM/discard operations that are issued from the OS to CephFS file system is ignored, this will result the deleted blocks inside the VM (unused space) not able to be reclaim or not return to the shared datastore, resulting in steady shared datastore usage growth over time.
This is not a regression and is the behavior in released software until upstream kernel support is restored.
Resolution
- Continue using
`discard="ignore"`for`Shared_DataStore`VMs in NativeEdge v4.2.0.0 to avoid VM corruption. - Re‑enable
discard="unmap"only after Ubuntu releases a validated kernel patch. Current target unknown