#include "afs/sysincludes.h" /*Standard vendor system headers */
#include "afsincludes.h" /*AFS-based standard headers */
+#if defined(AFS_FBSD80_ENV)
+#define ma_vn_lock(vp, flags, p) (vn_lock(vp, flags))
+#define MA_VOP_LOCK(vp, flags, p) (VOP_LOCK(vp, flags))
+#define MA_VOP_UNLOCK(vp, flags, p) (VOP_UNLOCK(vp, flags))
+#else
+#define ma_vn_lock(vp, flags, p) (vn_lock(vp, flags, p))
+#define MA_VOP_LOCK(vp, flags, p) (VOP_LOCK(vp, flags, p))
+#define MA_VOP_UNLOCK(vp, flags, p) (VOP_UNLOCK(vp, flags, p))
+#endif
+
int
-osi_TryEvictVCache(struct vcache *avc, int *slept) {
+osi_TryEvictVCache(struct vcache *avc, int *slept, int defersleep) {
/*
* essentially all we want to do here is check that the
void
osi_AttachVnode(struct vcache *avc, int seq) {
struct vnode *vp;
+ struct thread *p = curthread;
ReleaseWriteLock(&afs_xvcache);
AFS_GUNLOCK();
#ifdef AFS_FBSD70_ENV
/* XXX verified on 80--TODO check on 7x */
if (!vp->v_mount) {
- vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); /* !glocked */
+ ma_vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, p); /* !glocked */
insmntque(vp, afs_globalVFS);
- VOP_UNLOCK(vp, 0);
+ MA_VOP_UNLOCK(vp, 0, p);
}
#endif
AFS_GLOCK();