KernVMLock: Difference between revisions
Appearance
m Ak120 moved page OS2 API:KEE:KernVMLock to KernVMLock |
No edit summary |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
This is the equivalent of the DevHlp_VMLock function. See the PDD docs for details. | |||
==Synopsis== | ==Synopsis== | ||
APIRET APIENTRY KernVMLock(ULONG flags,PVOID linaddr,ULONG size, KEEVMLOCK* lock, KEEVMPageList* pglist, PULONG pgsize); | APIRET APIENTRY KernVMLock(ULONG flags,PVOID linaddr,ULONG size, KEEVMLOCK* lock, KEEVMPageList* pglist, PULONG pgsize); | ||
==Parameters== | ==Parameters== | ||
;''flags'' ([[ULONG]]) - input:One or more of the following bits: | |||
:KEE_VML_NOTBLOCK - Don't block the call, if the pages can't be locked. | |||
:KEE_VML_CONTIG - Pages locked must be contiguous. | |||
:KEE_VML_16M - Pages must be below 16MB. | |||
:KEE_VML_WRITEABLE - Pages will be writeable. | |||
:KEE_VML_LONGLOCK - The lock is for long time. | |||
:KEE_VML_VERIFYONLY - Verify the accessibility of the region. If KEE_VML_WRITEABLE is set, check for R/W access, else R/O. | |||
;''linaddr'' ([[PVOID]]) - input:linear address of the memory region. | |||
;''size'' ([[ULONG]]) - input:Size of the memory region. | |||
;''lock'' (KEEVMLOCK*) - input:Pointer to a lock data structure that contains the lock information. | |||
;''pglist'' (KEEVMPageList*) - input:Pointer to a pagelist structure, provided by the user | |||
;''pgsize'' ([[PULONG]]) - input:Pointer to an ULONG where the size of the pagelist structure is returned. | |||
[[Category:KEE]] | |||
[[Category: |
Latest revision as of 03:54, 28 May 2025
This is the equivalent of the DevHlp_VMLock function. See the PDD docs for details.
Synopsis
APIRET APIENTRY KernVMLock(ULONG flags,PVOID linaddr,ULONG size, KEEVMLOCK* lock, KEEVMPageList* pglist, PULONG pgsize);
Parameters
- flags (ULONG) - input
- One or more of the following bits:
- KEE_VML_NOTBLOCK - Don't block the call, if the pages can't be locked.
- KEE_VML_CONTIG - Pages locked must be contiguous.
- KEE_VML_16M - Pages must be below 16MB.
- KEE_VML_WRITEABLE - Pages will be writeable.
- KEE_VML_LONGLOCK - The lock is for long time.
- KEE_VML_VERIFYONLY - Verify the accessibility of the region. If KEE_VML_WRITEABLE is set, check for R/W access, else R/O.
- linaddr (PVOID) - input
- linear address of the memory region.
- size (ULONG) - input
- Size of the memory region.
- lock (KEEVMLOCK*) - input
- Pointer to a lock data structure that contains the lock information.
- pglist (KEEVMPageList*) - input
- Pointer to a pagelist structure, provided by the user
- pgsize (PULONG) - input
- Pointer to an ULONG where the size of the pagelist structure is returned.