lockf
int lockf(int, int, off_t);
if (lockf(fileno(fp), F_LOCK, (off_t)0) == -1)
if (lockf(fileno(fp), F_ULOCK, (off_t)0) == -1)
lf_advlock(struct vop_advlock_args *ap, struct lockf *lock, u_quad_t size)
lf_setlock(struct lockf *lock, struct proc *owner, int type, int flags,
static void _lf_print_lock(const struct lockf *);
lf_getlock(struct flock *fl, struct lockf *lock, struct proc *owner,
static void lf_wakeup(struct lockf *, off_t, off_t);
lf_wakeup(struct lockf *lock, off_t start, off_t end)
static int lf_setlock(struct lockf *, struct proc *, int, int,
static int lf_getlock(struct flock *, struct lockf *, struct proc *,
_lf_print_lock(const struct lockf *lock)
SYSINIT(lockf, SI_BOOT2_MACHDEP, SI_ORDER_ANY, lf_init, NULL);
int lf_advlock(struct vop_advlock_args *, struct lockf *, u_quad_t);
struct lockf dn_advlock;
struct lockf advlock;
struct lockf advlock;
struct lockf advlock;
struct lockf i_lockf; /* head of byte-level lock list */
struct lockf n_lockf; /* Locking record of file */
struct lockf n_lockf; /* Locking records of file */
struct lockf tn_advlock;
struct lockf i_lockf;/* Head of byte-level lock list. */
struct lockf lockf;
kkread(kd, (u_long)&ip->i_lockf, &lockf, sizeof(lockf));
dumplocks(kd, &lockf);
dumplocks(kvm_t *kd, struct lockf *lockf)
if ((scan = TAILQ_FIRST(&lockf->lf_range)) != NULL) {
if ((scan = TAILQ_FIRST(&lockf->lf_blocked)) != NULL) {
static void dumplocks(kvm_t *kd, struct lockf *lockf);
if (lockf(fd, F_LOCK, 0) == -1)
if (lockf(fd, F_ULOCK, 0) == -1)
if (lockf(fd, F_LOCK, 0) == -1)
if (lockf(fd, F_ULOCK, 0) == -1)
if (lockf(fd, F_LOCK, size) == -1)
if (lockf(fd, F_ULOCK, size) == -1)
i = lockf (fd, F_LOCK, 0);
i = lockf (fd, F_TLOCK, 0);
i = lockf (fd, F_ULOCK, 0);