3.2.5.1.1 Handling a Request to Associate an Open to a Logical Flow
If Request.Options includes the STORAGE_QOS_CONTROL_FLAG_SET_LOGICAL_FLOW_ID or STORAGE_QOS_CONTROL_FLAG_PROBE_POLICY flags and Request.LogicalFlowID is set to a non-empty GUID, the server MUST look up the specified GUID in LogicalFlowTable. If an entry is not found, the server MUST create a new logical with GUID equal to Request.LogicalFlowID and add it to the LogicalFlowTable. The server MUST associate the Open with the logical flow identified by Request.LogicalFlowID.
If Request.Options includes the STORAGE_QOS_CONTROL_FLAG_PROBE_POLICY flag and Request.LogicalFlowID is set to an empty GUID, the server MUST fail the request with error STATUS_INVALID_PARAMETER.
If Request.Options includes the STORAGE_QOS_CONTROL_FLAG_SET_LOGICAL_FLOW_ID flag and Request.LogicalFlowID is set to an empty GUID, the server MUST remove the association between the Open and the logical flow currently associated to the Open. The Open MUST NOT be associated with any other logical flow.