BlockDev_Command_Complete

include blockdev.inc

mov edi, OFFSET32 bdd ; points to BlockDev_Device_Descriptor

mov esi, OFFSET32 bcb ; points to BlockDev_Command_Block

VXDcall BlockDev_Command_Complete


The BlockDev_Command_Complete service calls the callback procedure specified in the BlockDev_Device_Descriptor structure. After the callback procedure returns, BlockDev_Command_Complete sends the pending command (if any) to the block device's command procedure. The service sends pending commands only if the BDF_Serial_Cmd flag is set in the BDD_Flags field. This field is located in the device's BlockDev_Device_Descriptor structure.

A block device driver should call this service whenever it completes a command.

Parameters

bdd

Points to the BlockDev_Device_Descriptor structure containing information about the block device.

bcb

Points to the BlockDev_Command_Block structure containing information about the command just completed.

Return Value

This service has no return value.

Comments

The callback procedure preserves all registers, and BlockDev_Command_Complete preserves the ESI and EDI registers.

This service enables interrupts.

Uses

EAX, EBX, EDX, Flags