Efi_block_io.flushblocks(), Flushblocks() – Intel Extensible Firmware Interface User Manual
Page 409

Protocols
— Bootable Image Support
Version 1.10
12/01/02
11-49
EFI_BLOCK_IO.FlushBlocks()
Summary
Flushes all modified data to a physical block device.
Prototype
EFI_STATUS
(EFIAPI *EFI_BLOCK_FLUSH) (
IN
EFI_BLOCK_IO
*This
);
Parameters
This
Indicates a pointer to the calling context. Type
EFI_BLOCK_IO
is
defined in the
protocol description.
Description
The
FlushBlocks()
function flushes all modified data to the physical block device.
All data written to the device prior to the flush must be physically written before returning
EFI_SUCCESS
from this function. This would include any cached data the driver may have
cached, and cached data the device may have cached. Even if there were no outstanding data, a
read request to a device with removable media following a flush will always cause a device access.
Status Codes Returned
EFI_SUCCESS
All outstanding data were written correctly to the device.
EFI_DEVICE_ERROR
The device reported an error while attempting to write data.
EFI_NO_MEDIA
There is no media in the device.