DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 
SCO OpenServer

iodone(D3oddi)


iodone -- signal I/O completion

Synopsis

#include <sys/buf.h>

void iodone(struct buf *bp);

Description

The iodone( ) function completes a block driver's I/O request and wakes up all processes waiting completion of block I/O requests.

Arguments


bp
Pointer to the buffer header to be freed by brelse(D3oddi).

Return values

None. On success, iodone( ) ORs B_DONE into b_flags.

Usage

iodone( ) is generally called from a driver's intr(D2oddi) or strategy(D2oddi) entry point routine. iodone( ) calls brelse(D3oddi) to release the buffer whose address is specified by bp, followed by wakeup(D3oddi) to awaken the sleeping processes.

This routine can be used only with block device drivers.

Context and synchronization

Non-blockable, interrupt, user, or blockable context.

Hardware applicability

All

Version applicability

oddi: 1, 2, 2mp, 3, 3mp, 4, 4mp, 5, 5mp, 6, 6mp

SVR5 DDI compatibility

The biodone(D3) function provides similar functionality for DDI drivers. The syntax of biodone( ) is identical to the syntax of iodone( ).

References

brelse(D3oddi), iowait(D3oddi), wakeup(D3oddi)
19 June 2005
© 2005 The SCO Group, Inc. All rights reserved.
OpenServer 5 HDK - June 2005