ScsiPortFreeDeviceBase 함수(srb.h)
ScsiPortFreeDeviceBase 루틴은 ScsiPortGetDeviceBase를 사용하여 이전에 시스템 주소 공간에 매핑된 다양한 디바이스 I/O 또는 메모리 공간 주소를 해제합니다.
구문
SCSIPORT_API VOID ScsiPortFreeDeviceBase(
[in] PVOID HwDeviceExtension,
[in] PVOID MappedAddress
);
매개 변수
[in] HwDeviceExtension
하드웨어 디바이스 확장에 대한 포인터입니다. 포트 드라이버가 미니포트 드라이버를 대신하여 할당하고 초기화하는 HBA별 스토리지 영역입니다. 미니포트 드라이버는 일반적으로 HBA 상태 및 HBA의 매핑된 액세스 범위와 같은 HBA 관련 정보를 이 확장에 저장합니다. 이 영역은 미니포트 드라이버가 ScsiPortInitialize를 호출한 직후 HBA 디바이스 개체의 DeviceExtension-HwDeviceExtension> 멤버의 미니포트 드라이버에서 사용할 수 있습니다. 포트 드라이버는 디바이스를 제거할 때 이 메모리를 해제합니다.
[in] MappedAddress
해제할 범위의 기본 주소에 대한 포인터입니다. 이 주소는 ScsiPortGetDeviceBase에서 반환한 주소와 동일해야 합니다.
반환 값
없음
설명
미니포트 드라이버의 HwScsiFindAdapter 루틴에서 드라이버에 어댑터에 대해 매핑된 특정 기본 주소가 필요하지 않다고 판단하는 경우 이 루틴을 호출하여 매핑을 해제해야 합니다. 예를 들어 미니포트 드라이버가 특정 I/O 버스에 지원되는 HBA가 없다고 판단하는 경우 이 루틴을 호출한 경우 ScsiPortGetDeviceBase 에서 반환된 각 매핑된 주소를 사용하여 ScsiPortFreeDeviceBase를 호출해야 합니다.
ScsiPortFreeDeviceBase 는 미니포트 드라이버의 HwScsiFindAdapter 루틴에서만 호출할 수 있습니다. 다른 미니포트 드라이버 루틴에서 호출하면 호출자에 대한 시스템 오류 또는 잘못된 작업이 발생합니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 데스크톱 |
머리글 | srb.h(Miniport.h, Scsi.h 포함) |
라이브러리 | Scsiport.lib |