Is there an official requirement that, in MN_REMOVE_DEVICE path, IoDeleteDevice of your own DO must be called only after IoCallDriver the IRP down?
In other words, must IoDeleteDevice be called in PostRemove or it is OK to do this in PreRemove?
In other words, if the driver calls IoDeleteDevice before passing MN_REMOVE_DEVICE down, is it a bug?
Maxim S. Shatskih
Microsoft MVP on File System And Storage