projects
/
apple
/
xnu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
xnu-4570.31.3.tar.gz
[apple/xnu.git]
/
bsd
/
sys
/
lockf.h
diff --git
a/bsd/sys/lockf.h
b/bsd/sys/lockf.h
index ffa77957356febb00624fe6d29dac5ba3b1b6b08..e20bf87335bbd6b2c3222a4ea9bcdf388de6eef4 100644
(file)
--- a/
bsd/sys/lockf.h
+++ b/
bsd/sys/lockf.h
@@
-73,6
+73,11
@@
struct vnode;
MALLOC_DECLARE(M_LOCKF);
#endif
MALLOC_DECLARE(M_LOCKF);
#endif
+#if IMPORTANCE_INHERITANCE
+#define LF_NOT_BOOSTED 0
+#define LF_BOOSTED 1
+#endif /* IMPORTANCE_INHERITANCE */
+
/*
* The lockf structure is a kernel structure which contains the information
* associated with a byte range lock. The lockf structures are linked into
/*
* The lockf structure is a kernel structure which contains the information
* associated with a byte range lock. The lockf structures are linked into
@@
-95,6
+100,10
@@
struct lockf {
struct lockf *lf_next; /* Pointer to the next lock on this inode */
struct locklist lf_blkhd; /* List of requests blocked on this lock */
TAILQ_ENTRY(lockf) lf_block;/* A request waiting for a lock */
struct lockf *lf_next; /* Pointer to the next lock on this inode */
struct locklist lf_blkhd; /* List of requests blocked on this lock */
TAILQ_ENTRY(lockf) lf_block;/* A request waiting for a lock */
+#if IMPORTANCE_INHERITANCE
+ int lf_boosted; /* Is the owner of the lock boosted */
+#endif
+ struct proc *lf_owner; /* The proc that did the SETLK, if known */
};
#pragma pack()
};
#pragma pack()
@@
-108,6
+117,7
@@
__BEGIN_DECLS
int lf_advlock(struct vnop_advlock_args *);
int lf_assert(struct vnop_advlock_args *, void **);
void lf_commit(void *, int);
int lf_advlock(struct vnop_advlock_args *);
int lf_assert(struct vnop_advlock_args *, void **);
void lf_commit(void *, int);
+void lf_abort_advlocks(vnode_t);
#ifdef LOCKF_DEBUG
void lf_print(char *, struct lockf *);
#ifdef LOCKF_DEBUG
void lf_print(char *, struct lockf *);