GETIOBUF(9)

NAME
getiobuf, putiobuf - I/O descriptor allocation interface

SYNOPSIS
#include <sys/buf.h>
struct buf *
getiobuf(struct vnode *vp, bool waitok);
void
putiobuf(struct buf *bp);

DESCRIPTION
getiobuf() allocates a buf structure.

vp  The vnode to which the allocated buffer will be associated. This can be NULL.

waitok
    If true, getiobuf can sleep until enough memory is available. Otherwise, it returns NULL immediately if not enough memory is available.

Note that the allocated buffer doesn't belong to the buffer cache. To free it, putiobuf() should be used. brelse() should not be used on it.

putiobuf() frees bp, which should be a buffer allocated with getiobuf().

SEE ALSO
buffercache(9), intro(9)