IRP_MN_FILTER_RESOURCE_REQUIREMENTS

Okay, I’ve beat my head on the wall long enough …

What’s the “correct” way to filter the resource requirements if you are
adding resources to the list. The DDK says one thing, the drivers in the DDK
so something else. I’m always inclined to believe the drivers in the DDK.

So a little background - we’re writing a driver that handles an disk
controller. Due to nasty old legacy behavior of the disk controller it needs
fixed I/O resources not reported through PCI (no, this isn’t a new design).
So I’ve tried reporting them on the way down (which works (comma but) and on
the way up (which works (comma but), but after I complete the start irp (the
start irp had my resources in it) things go OK until I go to do a query
device relations for child relations. I do a KeDelayExecutionThread which
wakes up a thread in ACPI and it bugchecks in some worker thread routine
(ACPI!ACPIFilterIrpStartDeviceWorker). I’m guessing I’m screwing something
up in the way I do the filter, but for the life of me - I don’t know what.
The interesting thing about the stack trace on the bugcheck is that it seems
to be calling IoCompleteRequest. If it is, I’m wondering if it isn’t trying
to complete the start device which is already long gone.

Any thoughts?

Mark A. Overby
Chipset Software Engineering
NVidia Corporation
(425) 591-6526
xxxxx@nvidia.com
?


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