DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 
SVR5

biocanblock(D3)


biocanblock -- ensure that a b_iodone handler is executing in a blockable context

Synopsis

   #include <sys/buf.h>
   #include <sys/ddi.h>
   

boolean_t biocanblock(buf_t *bp);

Description

biocanblock( ) queues a buf(D4) buffer for processing in a blockable context by a call to the b_iodone handler if not already executing in such a context.

Arguments


bp
Pointer to a buf(D4) structure.

Return values

biocanblock( ) returns non-zero (true) if the b_iodone handler is running in a context that is allowed to block. If it returns false (0), the caller must return immediately, and the b_iodone routine will eventually be called again in a context for which biocanblock( ) will return true (non-zero).

Usage

biocanblock( ) is used to properly handle I/O retries in light of multiple layered drivers.

Context and synchronization

All contexts.

Hardware applicability

All

Version applicability

ddi: 8, 8mp layered drivers.

References

biodone(D3), buf(D4)
19 June 2005
© 2005 The SCO Group, Inc. All rights reserved.
OpenServer 6 and UnixWare (SVR5) HDK - June 2005