 |
Index for Section 9r |
|
 |
Alphabetical listing for B |
|
 |
Bottom of page |
|
BUF_LOCK(9r)
NAME
BUF_LOCK - General: Locks the specified I/O buffer
SYNOPSIS
void BUF_LOCK(
struct buf *bp );
ARGUMENTS
bp Specifies a pointer to a buf structure.
DESCRIPTION
The BUF_LOCK routine locks the specified I/O buffer. The routine masks all
disk and tape controller interrupts (by calling the splbio routine). It
sets the mutual exclusion buffer lock member, b_lock, of the specified buf
structure pointer.
The BUF_LOCK routine then sets the b_flags member of the specified buf
structure pointer to B_BUSY to indicate that this buffer is being used.
Finally, BUF_LOCK resets the CPU priority level (by calling the splx
routine).
NOTES
You should design in your kernel modules to hold the I/O buffer lock for as
short a period of time as possible to allow maximum concurrency. You should
also release the I/O buffer lock by calling the BUF_UNLOCK routine before
returning from the module's entry point.
RETURN VALUES
None
SEE ALSO
Routines: BUF_UNLOCK(9r)
 |
Index for Section 9r |
|
 |
Alphabetical listing for B |
|
 |
Top of page |
|