The IoInvalidateDeviceState routine notifies the PnP manager that some aspect of the PnP state of a device has changed.
VOID
IoInvalidateDeviceState(
IN PDEVICE_OBJECT PhysicalDeviceObject
);
None
Declared in wdm.h and ntddk.h. Include wdm.h or ntddk.h.
Drivers call this routine to indicate that something has changed with respect to one of the following aspects of a device's PnP state:
PNP_DEVICE_DISABLED
PNP_DEVICE_DONT_DISPLAY_IN_UI
PNP_DEVICE_FAILED
PNP_DEVICE_NOT_DISABLEABLE
PNP_DEVICE_REMOVED
PNP_DEVICE_RESOURCE_REQUIREMENTS_CHANGED
In response to this routine, the PnP Manager sends an IRP_MN_QUERY_PNP_DEVICE_STATE request to the device stack, to determine the current PnP state of the device.
Callers of IoInvalidateDeviceState must be running at IRQL <= DISPATCH_LEVEL.