示例#1
0
void
VLockFileUnlock(struct VLockFile *lf, afs_uint32 offset)
{
    MUTEX_ENTER(&lf->mutex);

    osi_Assert(lf->fd != INVALID_FD);

    if (--lf->refcount < 1) {
	_VCloseFd(lf->fd);
	lf->fd = INVALID_FD;
    } else {
	_VUnlockFd(lf->fd, offset);
    }

    MUTEX_EXIT(&lf->mutex);
}
示例#2
0
文件: vutil.c 项目: jblaine/openafs
void
VLockFileUnlock(struct VLockFile *lf, afs_uint32 offset)
{
    opr_mutex_enter(&lf->mutex);

    opr_Assert(lf->fd != INVALID_FD);

    if (--lf->refcount < 1) {
	_VCloseFd(lf->fd);
	lf->fd = INVALID_FD;
    } else {
	_VUnlockFd(lf->fd, offset);
    }

    opr_mutex_exit(&lf->mutex);
}
示例#3
0
void
VLockFileUnlock(struct VLockFile *lf, afs_uint32 offset)
{
    AFS_LF_LOCK(lf);

    assert(lf->fd != INVALID_FD);

    if (--lf->refcount < 1) {
	_VCloseFd(lf->fd);
	lf->fd = INVALID_FD;
    } else {
	_VUnlockFd(lf->fd, offset);
    }

    AFS_LF_UNLOCK(lf);
}