/* vnode */
#define VN_HOLD(vp) afs_vget((vp), 0)
#define VN_RELE(vp) vrele(vp)
-#define osi_vnhold(avc, r) afs_vget(AFSTOV(avc), 0)
#define va_nodeid va_fileid
#define vnode_t struct vnode
#ifdef AFS_KALLOC
#undef AFS_KALLOC
-#define AFS_KALLOC(s) osi_obsd_Alloc((s), 1 /* cansleep */)
#endif
+#define AFS_KALLOC(s) osi_obsd_Alloc((s), 1 /* cansleep */)
#ifdef AFS_KFREE
#undef AFS_KFREE
-#define AFS_KFREE(p, s) (osi_obsd_Free((p), (s)))
#endif
+#define AFS_KFREE(p, s) (osi_obsd_Free((p), (s)))
#ifdef AFS_OBSD42_ENV
/* removed, live with it */
/* time */
#define afs_hz hz
-#define osi_GetTime(x) microtime(x)
extern time_t osi_Time();
/* str */
} while (0)
/* vnodes */
+#if defined(AFS_OBSD49_ENV)
+extern struct vops afs_vops;
+#define IsAfsVnode(v) ((v)->v_op == &afs_vops)
+#else
extern int (**afs_vnodeop_p) ();
+#define IsAfsVnode(v) ((v)->v_op == afs_vnodeop_p)
+#endif
#define vType(vc) AFSTOV(vc)->v_type
#define vSetVfsp(vc, vfsp) AFSTOV(vc)->v_mount = (vfsp)
#define vSetType(vc, type) AFSTOV(vc)->v_type = (type)
-#define IsAfsVnode(v) ((v)->v_op == afs_vnodeop_p)
#define SetAfsVnode(v) /* nothing; done in getnewvnode() */
#define osi_procname(procname, size) strncpy(procname, curproc->p_comm, size)
+static_inline void
+osi_GetTime(osi_timeval32_t *atv)
+{
+ struct timeval now;
+ microtime(&now);
+ atv->tv_sec = now.tv_sec;
+ atv->tv_usec = now.tv_usec;
+}
+
#endif /* _OSI_MACHDEP_H_ */