include vdmad.inc mov ebx, VMHandle mov al, Flags mov edi, OFFSET32 DDS VxDcall VDMAD_Scatter_Unlock jc ErrorHandler
Attempts to unlock all pages locked by a previous call to the VDMAD_Scatter_Lock service. Uses flags
VMHandle
Specifies the virtual machine handle.
Flags
Specifies the operation flags. The parameter can be one of the following values:
0 | Fills the DDS table with physical addresses and sizes of the physical regions that make up the DMA region. |
1 | Fills the DDS table with the actual page table entries. |
2 | Prevents not-present pages from being locked. This value is ignored if bit 0 is not set. |
4 | Prevents pages from being marked as dirty. If bits 0 and 1 are set but 2 is clear, then not-present pages are not marked. |
DDS
Points to the extended DDS (DMA Descriptor Structure) to receive the information.
If bits 0 and 1 in the AL register are set, the table at the end of the DDS is not required to unlock the previously locked pages; otherwise, the table is not used and caller need not maintain the table after the lock call.