none
i am facing one issue, to root cause that.I want to find driver unloading order while shutdown or reboot. RRS feed

  • Question

  • I am facing fabric error while rebooting system. So to root cause that i want to check driver unloading order in windbg. If we have verbose on in windbg than we can se driver loading order. But i want to know how i can check same thing while unloading.
    Wednesday, April 3, 2013 4:07 AM

Answers

  • drivers are not unloaded on shutdown and reboot. pnp drivers are sent an S5 power irp and the device is powered down. that's it. non pnp drivers are not unloaded either.  what specific problem are you having? perhaps it is a problem related to power down order of a dependent device in the tree, that is an entirely different problem than unload

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Wednesday, April 3, 2013 7:11 PM

All replies

  • About the only way to do this is to manually put breakpoints on the unload routines of the drivers.  You can find those in the DRIVER_OBJECTS and go from there.


    Don Burn Windows Filesystem and Driver Consulting Website: http://www.windrvr.com Blog: http://msmvps.com/blogs/WinDrvr

    Wednesday, April 3, 2013 6:51 PM
  • drivers are not unloaded on shutdown and reboot. pnp drivers are sent an S5 power irp and the device is powered down. that's it. non pnp drivers are not unloaded either.  what specific problem are you having? perhaps it is a problem related to power down order of a dependent device in the tree, that is an entirely different problem than unload

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Wednesday, April 3, 2013 7:11 PM
  • We found that a fabric error occurs during the shutdown path in almost every instance of the problem.

    Now, to debug this problem further, we are trying to find out  the order in which the drivers get unloaded during the shutdown path. The theory is that a driver X gets unloaded before a driver Y that is dependent on it is unloaded, eventually leading to a fabric error when Y  tries to perform some action.

    Thursday, April 4, 2013 4:25 AM
  • Ok thanks, but can we know this S5 power irp sequence?

    How we can differentiate between pnp and non pnp drivers.

    Thursday, April 4, 2013 4:59 AM
  • What other driver stacks does the fabric driver depend on? A Nic? I don't think you have a dependency on a non pnp driver.

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Thursday, April 4, 2013 6:35 AM
  • Doron can you please help me how to find S5 power irp sequence. How can i find which driver is pnp or non pnp.
    Thursday, April 4, 2013 6:44 AM