Load/Unload and BSODs

Hi,
I have a dynamically load/unload driver. The problem is that if for some
reason the driver crashes and gives me a BSOD, i am not able to load the
driver the next time i restart. I get error no. 1072(service marked for
deletion) when i try to remove the service and hence i’m unable to load the
driver again.
If i restart the machine again, i am able to load the driver as the service
has been deleted. Now my question is that if i get a BSOD, i restart my
machine and then try to delete the service why is the system unable to do
so?
All open handles to the service would have been closed on restart.
Thanks
Samarth

Are you saying that if your driver/service causes a BSOD, then after the
reboot, you are unable to rtart the driver/service; but if you boot one
more time, you can start the driver/service?

If so, I suspect the OS is being cautious: It doesn’t want to start a
driver/service that caused a problem the last time the system was up.
But if the last time the system was up, no problem was observed – even
if it happened that the driver/service simply had not been started –
then the OS feels it’s reasonably safe to mark the driver/service as
safe. Once so marked, the driver/service can be started.

If the OS did not have this cautious practice, there would be the
possibility of the system being caught in a loop of boot, driver/server
automatic start, BSOD.


If replying by e-mail, please remove “nospam.” from the address.

James Antognini