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 enough memory is not available.

Note that the allocated buffer doesn't belong to 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)