UNLOCK(D3)
UNLOCK - release a basic lock
As shipped in IRIX 6.5.22. Unchanged since IRIX 6.5.
NAME UNLOCK - release a basic lock SYNOPSIS #include <sys/types.h> #include <sys/ksynch.h> #include <sys/ddi.h> void UNLOCK(lock_t *lockp, int pl); Arguments lockp Pointer to the basic lock to be released. pl The interrupt priority level to be set after releasing the lock. This argument should be the value returned by LOCK. DESCRIPTION UNLOCK releases the basic lock specified by lockp and then sets the interrupt priority level in accordance with the value specified by pl. Return Values None USAGE See the description of the min_pl argument to LOCK_ALLOC(D3) for a list of the valid values for pl. If lock calls are not being nested or if the caller is unlocking in the reverse order that locks were acquired, the pl argument should be the value that was returned from the corresponding call to acquire the lock. The caller may need to specify a different returned value by other LOCK for pl if nested locks are released in some order other than the reverse order of acquisition, so as to ensure that the interrupt priority level is kept sufficiently high to block interrupt code that might attempt to acquire locks which are still held. Level Base or Interrupt. Synchronization Constraints Does not sleep. Driver-defined basic locks, read/write locks, and sleep locks may be held across calls to this function. REFERENCES LOCK(D3), LOCK_ALLOC(D3), LOCK_DEALLOC(D3), TRYLOCK(D3)