[NTOSKRNL]

- It appears that the driver unloading code is more profoundly broken that I had previously thought. I ran into issues testing with videoprt which would call IoCreateDevice and IoDeleteDevice during enumeration of child devices. The issue arose when the IoDeleteDevice call unloaded the video driver which was currently initializing. This caused video initialization to fail and the system to shutdown.
- Disable this code completely for now until the proper algorithm for determining when a driver should unload is found

svn path=/trunk/; revision=56125
This commit is contained in:
Cameron Gutman 2012-03-12 01:53:20 +00:00
parent 4450ed65cd
commit ef685fd540

View file

@ -364,6 +364,7 @@ VOID
NTAPI
IopUnloadDevice(IN PDEVICE_OBJECT DeviceObject)
{
#if 0
PDRIVER_OBJECT DriverObject = DeviceObject->DriverObject;
PEXTENDED_DEVOBJ_EXTENSION ThisExtension = IoGetDevObjExtension(DeviceObject);
PDEVICE_NODE DeviceNode = IopGetDeviceNode(DeviceObject);
@ -463,7 +464,7 @@ IopUnloadDevice(IN PDEVICE_OBJECT DeviceObject)
/* Dereference once more, referenced at driver object creation */
ObDereferenceObject(DriverObject);
#endif
}
VOID