Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

buf_lock(9r) [osf1 man page]

BUF_LOCK(9r)															      BUF_LOCK(9r)

NAME
BUF_LOCK - General: Locks the specified I/O buffer SYNOPSIS
void BUF_LOCK( struct buf *bp ); ARGUMENTS
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 rou- tine). 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 concur- rency. 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) BUF_LOCK(9r)

Check Out this Related Man Page

BUF_TIMELOCK(9) 					   BSD Kernel Developer's Manual					   BUF_TIMELOCK(9)

NAME
BUF_TIMELOCK -- locks a buffer SYNOPSIS
#include <sys/param.h> #include <sys/systm.h> #include <sys/uio.h> #include <sys/bio.h> #include <sys/buf.h> int BUF_TIMELOCK(struct buf *bp, int locktype, char *wmesg, int catch, int timo); DESCRIPTION
The BUF_TIMELOCK() function locks the given buffer, and limits the amount of time it will sleep to timo and OR's catch into the sleep's pri- ority. wmesg is the wmesg used in the sleep. Its arguments are: bp The buffer to lock. locktype Flags controlling the type of lock. See lockmgr(9) for details. wmesg The wmesg used in any sleeps while acquiring the lock. catch Priority OR'd into the sleep's priority. timo The timeout for any sleeps encountered during the lock. RETURN VALUES
A value of 0 is returned on success. See lockmgr(9) for details on non-zero return values. SEE ALSO
buf(9), BUF_LOCK(9), BUF_UNLOCK(9), lockmgr(9) AUTHORS
This manual page was written by Chad David <davidc@acns.ab.ca>. BSD
July 9, 2001 BSD
Man Page

We Also Found This Discussion For You

1. What is on Your Mind?

Throw my Toys out of the Pram!

Hi Folks, Today hasn't been the best one of my career in IT. I've been a contractor for a major utility company for a number of years, on a number of seperate IT contracts mostly Unix. The company had 10 different flavours of unix and multiple different varsions of most of them. At the... (3 Replies)
Discussion started by: gull04
3 Replies