1 /* -*- mode: c; c-basic-offset: 8; -*- 2 * vim: noexpandtab sw=8 ts=8 sts=0: 3 * 4 * dlmdebug.h 5 * 6 * Copyright (C) 2008 Oracle. All rights reserved. 7 * 8 * This program is free software; you can redistribute it and/or 9 * modify it under the terms of the GNU General Public 10 * License as published by the Free Software Foundation; either 11 * version 2 of the License, or (at your option) any later version. 12 * 13 * This program is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16 * General Public License for more details. 17 * 18 * You should have received a copy of the GNU General Public 19 * License along with this program; if not, write to the 20 * Free Software Foundation, Inc., 59 Temple Place - Suite 330, 21 * Boston, MA 021110-1307, USA. 22 * 23 */ 24 25 #ifndef DLMDEBUG_H 26 #define DLMDEBUG_H 27 28 void dlm_print_one_mle(struct dlm_master_list_entry *mle); 29 30 #ifdef CONFIG_DEBUG_FS 31 32 struct dlm_debug_ctxt { 33 struct kref debug_refcnt; 34 struct dentry *debug_state_dentry; 35 struct dentry *debug_lockres_dentry; 36 struct dentry *debug_mle_dentry; 37 struct dentry *debug_purgelist_dentry; 38 }; 39 40 struct debug_buffer { 41 int len; 42 char *buf; 43 }; 44 45 struct debug_lockres { 46 int dl_len; 47 char *dl_buf; 48 struct dlm_ctxt *dl_ctxt; 49 struct dlm_lock_resource *dl_res; 50 }; 51 52 int dlm_debug_init(struct dlm_ctxt *dlm); 53 void dlm_debug_shutdown(struct dlm_ctxt *dlm); 54 55 int dlm_create_debugfs_subroot(struct dlm_ctxt *dlm); 56 void dlm_destroy_debugfs_subroot(struct dlm_ctxt *dlm); 57 58 int dlm_create_debugfs_root(void); 59 void dlm_destroy_debugfs_root(void); 60 61 #else 62 63 static inline int dlm_debug_init(struct dlm_ctxt *dlm) 64 { 65 return 0; 66 } 67 static inline void dlm_debug_shutdown(struct dlm_ctxt *dlm) 68 { 69 } 70 static inline int dlm_create_debugfs_subroot(struct dlm_ctxt *dlm) 71 { 72 return 0; 73 } 74 static inline void dlm_destroy_debugfs_subroot(struct dlm_ctxt *dlm) 75 { 76 } 77 static inline int dlm_create_debugfs_root(void) 78 { 79 return 0; 80 } 81 static inline void dlm_destroy_debugfs_root(void) 82 { 83 } 84 85 #endif /* CONFIG_DEBUG_FS */ 86 #endif /* DLMDEBUG_H */ 87