[NTOSKRNL]
authorCameron Gutman <aicommander@gmail.com>
Thu, 26 Jan 2012 03:24:47 +0000 (03:24 +0000)
committerCameron Gutman <aicommander@gmail.com>
Thu, 26 Jan 2012 03:24:47 +0000 (03:24 +0000)
- Add a hack so that registering an interface after a remove and reconnect works

svn path=/branches/usb-bringup-trunk/; revision=55193

ntoskrnl/io/iomgr/deviface.c

index 9730536..9b40aab 100644 (file)
@@ -1145,7 +1145,12 @@ IoRegisterDeviceInterface(IN PDEVICE_OBJECT PhysicalDeviceObject,
 
     /* If the symbolic link already exists, return an informational success status */
     if (SymLinkStatus == STATUS_OBJECT_NAME_COLLISION)
 
     /* If the symbolic link already exists, return an informational success status */
     if (SymLinkStatus == STATUS_OBJECT_NAME_COLLISION)
+    {
+        /* HACK: Delete the existing symbolic link and update it to the new PDO name */
+        IoDeleteSymbolicLink(SymbolicLinkName);
+        IoCreateSymbolicLink(SymbolicLinkName, &PdoNameInfo->Name);
         SymLinkStatus = STATUS_OBJECT_NAME_EXISTS;
         SymLinkStatus = STATUS_OBJECT_NAME_EXISTS;
+    }
 
     if (!NT_SUCCESS(SymLinkStatus))
     {
 
     if (!NT_SUCCESS(SymLinkStatus))
     {