Author: cgutman
Date: Wed Mar 21 15:19:42 2012
New Revision: 56206
URL: http://svn.reactos.org/svn/reactos?rev=56206&view=rev
Log:
[NTOSKRNL]
- Once again require a reboot for driver replacement since this seems to cause new issues with devices being enumerated multiple times on vmware
Modified:
trunk/reactos/ntoskrnl/io/pnpmgr/plugplay.c
Modified: trunk/reactos/ntoskrnl/io/pnpmgr/plugplay.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/pnpmgr/plugpla…
==============================================================================
--- trunk/reactos/ntoskrnl/io/pnpmgr/plugplay.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/io/pnpmgr/plugplay.c [iso-8859-1] Wed Mar 21 15:19:42 2012
@@ -597,15 +597,17 @@
/* Check if there's already a driver loaded for this device */
if (DeviceNode->Flags & DNF_ADDED)
{
+#if 0
/* Remove the device node */
Status = IopRemoveDevice(DeviceNode);
if (NT_SUCCESS(Status))
{
/* Invalidate device relations for the parent to reenumerate the device */
+ DPRINT1("A new driver will be loaded for '%wZ' (FDO above removed)\n", &DeviceNode->InstancePath);
Status = IoSynchronousInvalidateDeviceRelations(DeviceNode->Parent->PhysicalDeviceObject, BusRelations);
- DPRINT1("A new driver has been loaded for '%wZ' (FDO above removed)\n", &DeviceNode->InstancePath);
}
else
+#endif
{
/* A driver has already been loaded for this device */
DPRINT1("A reboot is required for the current driver for '%wZ' to be replaced\n", &DeviceNode->InstancePath);
@@ -623,8 +625,8 @@
if (NT_SUCCESS(Status))
{
/* Start the service and begin PnP initialization of the device again */
+ DPRINT1("A new driver will be loaded for '%wZ' (no FDO above)\n", &DeviceNode->InstancePath);
Status = IopActionInitChildServices(DeviceNode, DeviceNode->Parent);
- DPRINT1("A new driver will be loaded for '%wZ' (no FDO above)\n", &DeviceNode->InstancePath);
}
}