Previous Next

IoFreeController

The IoFreeController routine releases a previously allocated controller object when the driver has completed an I/O request.

VOID 
  IoFreeController(
    IN PCONTROLLER_OBJECT  ControllerObject
    );

Parameters

ControllerObject
Pointer to the driver’s controller object, which was allocated for the current I/O operation on a particular device by calling IoAllocateController.

Return Value

None

Headers

Declared in ntddk.h. Include ntddk.h.

Comments

The connection between the current target device object and the controller object is released only if no requests are currently queued to the same device. Otherwise, the driver’s ControllerControl routine is called with the next IRP bound through the device controller to the target device.

Callers of IoFreeController must be running at IRQL = DISPATCH_LEVEL.

See Also

IoAllocateController, IoCreateController, IoDeleteController