Bug in PNP-manager ?! Duplicates in Resource List on IRP_MN_START_DEVICE !?

I’m found a very strange problem.

On IRP_MN_FILTER_RESOURCE_REQUIREMENTS the Resource Requirements List
contain a three correct I/O-elements (and device’s PCI registers contain
correct values).

But on IRP_MN_START_DEVICE hardware resource list contain two duplicates !

My driver does not change/update resource lists issued by PNP-manager, and
does not write to PCI-config space.

And so, ON OTHER COMPUTER with some driver code and some PCI-device, ALL IS
OK !

What is happen ???

In a hour i will prepare a screen-shots at ftp://nut.elcat.kg/pnp-bug/

WinDbg log:

On IRP_MN_FILTER_RESOURCE_REQUIREMENTS resource requirements list is:
list 0:
resource 0: I/O Port, DeviceExclusive
Length 80, Align 128, Min 0, Max ffffffff
resource 1: Device Private, DeviceExclusive
resource 2: I/O Port, DeviceExclusive
Length 80, Align 128, Min 0, Max ffffffff
resource 3: Device Private, DeviceExclusive
resource 4: I/O Port, DeviceExclusive
Length 10, Align 16, Min 0, Max ffffffff
resource 5: Device Private, DeviceExclusive
resource 6: Interrupt, Shared
Min Vector 0, Max Vector ff

^This is ok, we are really need the three I/O blocks.

But on IRP_MN_START_DEVICE resource list is:
resource 0: I/O Port, Shared
ff00-ff80, 31
resource 1: Device Private, DeviceExclusive
resource 2: I/O Port, Shared
ff00-ff80, 31
resource 3: Device Private, DeviceExclusive
resource 4: I/O Port, Shared
fff0-10000, 31
resource 5: Device Private, DeviceExclusive
resource 6: Interrupt, Shared

Also PNP-manager configures the device’s PCI registers for these
addresses.


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com