-#define DBG_TEST(x) { \
- if(hfs_dbg_all || hfs_dbg_test) { \
- PRINTIT("%X: ", current_proc()->p_pid); \
- PRINTIT x; \
- PRINT_DELAY; \
- }; \
-}
-#else // HFS_DIAGNOSTIC
-#define DBG_ASSERT(a)
-#define DBG_VFS(x)
-#define DBG_VFS_CONT(x)
-#define DBG_VOP(x)
-#define DBG_VOP_CONT(x)
-#define DBG_LOAD(x)
-#define DBG_IO(x)
-#define DBG_UTILS(x)
-#define DBG_RW(x)
-#define DBG_LOOKUP(x)
-#define DBG_TREE(x)
-#define DBG_ERR(x)
-#define DBG_TEST(x)
-#endif // HFS_DIAGNOSTIC
-
-
-/* Used to help print commone values in the vnode ops */
-#if HFS_DIAGNOSTIC
- extern void debug_vn_status (char* introStr, struct vnode *vn);
- extern void debug_vn_print (char* introStr, struct vnode *vn);
- extern void debug_check_vnode(struct vnode *vp, int stage);
-
- #define DBG_VN_STATUS (introStr, vn) debug_vn_status (introStr, vn)
- #define DBG_VN_PRINT (introStr, vn) debug_vn_print (introStr, vn)
- #define DBG_FUNC_NAME(FSTR) static char *funcname = FSTR
- #define DBG_PRINT_FUNC_NAME() DBG_VFS(("%s: ", funcname));
- #define DBG_VOP_PRINT_FUNCNAME() DBG_VOP(("%s: ", funcname));
-
-
- /* This checks to make sure the passed in node is valid and HFS */
- #define DBG_HFS_NODE_CHECK(VP) { \
- if ((VP) == NULL || VTOH((VP))->h_valid != HFS_VNODE_MAGIC) { \
- DBG_VOP_CONT(("%s: INVALID VNODE: ", funcname)); \
- DBG_VOP_PRINT_VNODE_INFO(VP); \
- DBG_VOP_CONT(("\n")); \
- return (EINVAL); \
- } \
- }
-
- #define DBG_VOP_PRINT_VNODE_INFO(VP) { if (VP && VTOH((VP))->h_valid == HFS_VNODE_MAGIC) { \
- DBG_VOP_CONT(("\tn: %s, p: %d, id: %d, f: %d, u: %d, v: 0x%x ",H_NAME(VTOH(VP)), \
- H_DIRID(VTOH(VP)), H_FILEID(VTOH(VP)), H_FORKTYPE(VTOH(VP)), (VP)->v_usecount, (u_int)(VP))); \
- } else { \
- DBG_VOP_CONT(("\tBAD MACNODE"));}}
-
- #define DBG_VOP_PRINT_CPN_INFO(CN) DBG_VOP_CONT(("name: %s",(CN)->cn_nameptr));
-
-#else /* HFS_DIAGNOSTIC */
-
- #define DBG_VN_PRINT(introStr,vn)
- #define DBG_VN_STATUS(introStr,vn)
- #define DBG_FUNC_NAME(FSTR)
- #define DBG_PRINT_FUNC_NAME()
- #define DBG_HFS_NODE_CHECK(VP)
- #define DBG_VOP_PRINT_FUNCNAME()
- #define DBG_VOP_PRINT_VNODE_INFO(VP)
- #define DBG_VOP_PRINT_CPN_INFO(CN)
-
-#endif /* HFS_DIAGNOSTIC */
-