IopAllocateRelationList
_RELATION_LIST *__stdcall IopAllocateRelationList(PNP_DEVICE_DELETE_TYPE OperationCode){
_RELATION_LIST *CriticalMemory;
_DEVICE_OBJECT_LIST *DeviceObjectList;
CriticalMemory = (_RELATION_LIST *)PnpAllocateCriticalMemory(OperationCode, PagedPool, 0x10ui64, 0x54706E50u);
if( CriticalMemory )
{
DeviceObjectList = PiAllocateDeviceObjectList(OperationCode, 8ui64);
CriticalMemory->DeviceObjectList = DeviceObjectList;
if( DeviceObjectList )
{
CriticalMemory->Sorted = 0;
}
else
{
IopFreeRelationList(CriticalMemory);
return 0i64;
}
}
return CriticalMemory;
}Referenced by:
PnpBuildRemovalRelationList
PnpCancelRemoveOnHungDevices
PnpInvalidateRelationsInList
PnpQueuePendingSurpriseRemoval