Author: hpoussin
Date: Wed Nov 7 00:37:37 2007
New Revision: 30229
URL: http://svn.reactos.org/svn/reactos?rev=30229&view=rev
Log:
All PnP IRPs must be initialized with STATUS_NOT_SUPPORTED
Modified:
trunk/reactos/ntoskrnl/io/pnpmgr/pnpmgr.c
trunk/reactos/ntoskrnl/io/pnpmgr/pnpreport.c
Modified: trunk/reactos/ntoskrnl/io/pnpmgr/pnpmgr.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/pnpmgr/pnpmgr.…
==============================================================================
--- trunk/reactos/ntoskrnl/io/pnpmgr/pnpmgr.c (original)
+++ trunk/reactos/ntoskrnl/io/pnpmgr/pnpmgr.c Wed Nov 7 00:37:37 2007
@@ -154,7 +154,7 @@
&IoStatusBlock,
IRP_MN_FILTER_RESOURCE_REQUIREMENTS,
&Stack);
- if (!NT_SUCCESS(Status))
+ if (!NT_SUCCESS(Status) && Status != STATUS_NOT_SUPPORTED)
{
DPRINT("IopInitiatePnpIrp(IRP_MN_FILTER_RESOURCE_REQUIREMENTS) failed\n");
return Status;
@@ -205,7 +205,7 @@
}
else
{
- if (IopDeviceNodeHasFlag(DeviceNode, DNF_NEED_ENUMERATION_ONLY))
+ if (IopDeviceNodeHasFlag(DeviceNode, DNF_NEED_ENUMERATION_ONLY))
{
DPRINT("Device needs enumeration, invalidating bus relations\n");
/* Invalidate device relations synchronously
@@ -969,12 +969,8 @@
&Event,
IoStatusBlock);
- /* Most of PNP IRPs are initialized with a status code of
- STATUS_NOT_IMPLEMENTED */
- if (MinorFunction == IRP_MN_FILTER_RESOURCE_REQUIREMENTS)
- Irp->IoStatus.Status = STATUS_SUCCESS;
- else
- Irp->IoStatus.Status = STATUS_NOT_IMPLEMENTED;
+ /* PNP IRPs are initialized with a status code of STATUS_NOT_SUPPORTED */
+ Irp->IoStatus.Status = STATUS_NOT_SUPPORTED;
Irp->IoStatus.Information = 0;
IrpSp = IoGetNextIrpStackLocation(Irp);
Modified: trunk/reactos/ntoskrnl/io/pnpmgr/pnpreport.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/pnpmgr/pnprepo…
==============================================================================
--- trunk/reactos/ntoskrnl/io/pnpmgr/pnpreport.c (original)
+++ trunk/reactos/ntoskrnl/io/pnpmgr/pnpreport.c Wed Nov 7 00:37:37 2007
@@ -63,10 +63,6 @@
/* we don't need to call AddDevice and send IRP_MN_START_DEVICE */
- /* FIXME: save this device into the root-enumerated list, so this
- * device would be detected as a PnP device during next startups.
- */
-
return Status;
}