StorPortAllocateMdl 함수(storport.h)
StorPortAllocateMdl 루틴은 지정된 비페이지 풀 메모리를 설명하기 위해 MDL을 할당합니다.
구문
ULONG StorPortAllocateMdl(
[in] PVOID HwDeviceExtension,
[in] PVOID BufferPointer,
[in] ULONG NumberOfBytes,
[out] PVOID *Mdl
);
매개 변수
[in] HwDeviceExtension
HBA(호스트 버스 어댑터)의 하드웨어 디바이스 확장에 대한 포인터입니다.
[in] BufferPointer
MDL에서 설명할 버퍼의 기본 가상 주소에 대한 포인터입니다.
[in] NumberOfBytes
이 매개 변수는 MDL이 설명할 버퍼의 길이(바이트)를 지정합니다.
[out] Mdl
할당된 MDL을 받을 포인터입니다.
반환 값
StorPortAllocateMdl은 다음 상태 코드 중 하나를 반환합니다.
반환 코드 | 설명 |
---|---|
|
이 함수는 활성 운영 체제에서 구현되지 않습니다. |
|
루틴이 MDL을 성공적으로 할당했음을 나타냅니다. |
|
MDL을 받을 포인터가 NULL입니다.
버퍼에 대한 포인터가 NULL입니다. |
|
잘못된 IRQL에서 호출이 이루어졌습니다. |
|
지정된 버퍼를 설명하기 위해 MDL을 할당할 수 없습니다. |
설명
미니포트 드라이버는 StorPortAllocateMdl 루틴을 호출하여 MDL을 할당하여 페이징되지 않은 풀의 메모리 블록을 설명합니다. MDL을 해제하기 위해 미니포트 드라이버는 StorPortFreeMdl 루틴을 호출합니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 유니버설 |
헤더 | storport.h(Storport.h 포함) |
IRQL | <=DISPATCH_LEVEL |
DDI 규정 준수 규칙 | StorPortIrql(storport) |