Объявление функций с помощью типов ролей функций для драйверов Storport
Чтобы sdv мог анализировать драйвер Storport, необходимо объявить функции с помощью объявлений типов ролей функций, определенных для Storport. Типы ролей функций определены в Storport.h.
Необходимо объявить каждую функцию обратного вызова в драйвере Storport, указав соответствующий тип роли.
В следующем примере кода показано объявление типа роли функции для функции обратного вызова DriverIntialize. Тип роли функции — sp_DRIVER_INITIALIZE.
sp_DRIVER_INITIALIZE DriverEntry;
Если функция обратного вызова имеет объявление прототипа функции, необходимо заменить прототип функции объявлением типа роли функции.
Тип роли функции | Процедура Storport |
---|---|
sp_DRIVER_INITIALIZE | DriverEntry |
HW_INITIALIZE | HwStorInitialize |
HW_BUILDIO | HwStorBuildIo |
HW_STARTIO | HwStorStartIo |
HW_INTERRUPT | HwStorInterrupt |
HW_TIMER | HwStorTimer |
HW_FIND_ADAPTER | HwStorFindAdapter |
HW_RESET_BUS | HwStorResetBus |
HW_ADAPTER_CONTROL | HwStorAdapterControl |
HW_PASSIVE_INITIALIZE_ROUTINE | HwStorPassiveInitializeRoutine |
HW_DPC_ROUTINE | HwStorDpcRoutine |
HW_FREE_ADAPTER_RESOURCES | HwFreeAdapterResources — часть структуры VIRTUAL_HW_INITIALIZATION_DATA . |
HW_PROCESS_SERVICE_REQUEST | HwProcessServiceRequest — часть структуры VIRTUAL_HW_INITIALIZATION_DATA . |
HW_COMPLETE_SERVICE_IRP | HwCompleteServiceIrp — часть структуры VIRTUAL_HW_INITIALIZATION_DATA . |
HW_INITIALIZE_TRACING | HwInitializeTracing — часть структуры VIRTUAL_HW_INITIALIZATION_DATA . |
HW_CLEANUP_TRACING | HwCleanupTracing — часть структуры VIRTUAL_HW_INITIALIZATION_DATA . |
VIRTUAL_HW_FIND_ADAPTER | HwFindAdapter — часть структуры VIRTUAL_HW_INITIALIZATION_DATA . |
HW_MESSAGE_SIGNALED_INTERRUPT_ROUTINE | HwMSInterruptRoutine |