Windows 8.1 Boot Optimization?

Hello,

quite recently we run into a strange problem on machines running Windows
8.1. Our driver is a boot-time one that needs to be started really early
during the boot sequence (currently, it is placed in the Boot Bus
Extender load order group). The driver is a PnP one since it sets the
DriverExtension->AddDevice routine.

The strange behavior starts happening when the driver does not render
any activity during the boot phase (or is not active long enough). The
term “activity” here seems to be related to creation of device objects.
If the driver does not create a device object, it is labelled as
“inactive” and is not loaded the next boot although it is present in the
Boot Bus Extended group and has a tag value assigned.

We would llike to avoid creating dummy device objects since that may
lead to problems when the PnP manager decides to dynamically unload the
driver.

So, it seems to that there is some kind of an optimization related to
boot-time drivers. Is there a way how we can tell the system not to
optimize out our driver? The problem seems to manifest only on WIndows
8.1, other Windows versions look OK so far.

Best regards
Martin Dráb