| Previous | Next |
| VDS_E_PROVIDER_EXITING | VDS_E_MEMBER_SIZE_INVALID |
VDS_E_EXTENT_EXCEEDS_DISK_FREE_SPACE
This HRESULT concerns the physical allocation boundary used while creating or extending a software-provider volume. A VDS disk extent is a contiguous range of blocks with a byte offset and size. IVdsDisk::QueryExtents reports free and allocated regions, while VDS_INPUT_DISK.ullSize tells VDS how many bytes the caller wants the input disk to contribute. The provider still chooses the actual offset and extent layout.
Why this state matters
The error should therefore be diagnosed against the current free-extent map, not against total disk capacity. A disk can have enough aggregate unused space but no eligible free region for the requested topology, or the map may have changed after the caller enumerated it. Reusing a cached “free bytes” value is especially risky when another storage client can create or extend volumes concurrently.
Diagnostic focus
- Capture the requested
ullSize, disk object ID, and every free extent returned immediately before the failing operation. - Compare contiguous free regions and provider allocation requirements instead of subtracting used bytes from total disk size.
- Requery extents after any external Disk Management, DiskPart, cluster, or VDS operation that can alter layout.
- Preserve the exact input-disk array so an oversized member request is not hidden by a later retry with different disks.
Technical references
VDS_DISK_EXTENT · IVdsDisk::QueryExtents · VDS_INPUT_DISK · IVdsPack::CreateVolume · MS-VDS storage object relationships
Looking for a different code? Search another status or error code.
