Yehuda Sadeh | 3d14c5d | 2010-04-06 15:14:15 -0700 | [diff] [blame] | 1 | #ifndef _FS_CEPH_DEBUGFS_H |
| 2 | #define _FS_CEPH_DEBUGFS_H |
| 3 | |
David Howells | a1ce392 | 2012-10-02 18:01:25 +0100 | [diff] [blame] | 4 | #include <linux/ceph/ceph_debug.h> |
| 5 | #include <linux/ceph/types.h> |
Yehuda Sadeh | 3d14c5d | 2010-04-06 15:14:15 -0700 | [diff] [blame] | 6 | |
| 7 | #define CEPH_DEFINE_SHOW_FUNC(name) \ |
| 8 | static int name##_open(struct inode *inode, struct file *file) \ |
| 9 | { \ |
Ilya Dryomov | 9571eb4 | 2015-03-25 21:15:17 +0300 | [diff] [blame] | 10 | return single_open(file, name, inode->i_private); \ |
Yehuda Sadeh | 3d14c5d | 2010-04-06 15:14:15 -0700 | [diff] [blame] | 11 | } \ |
| 12 | \ |
| 13 | static const struct file_operations name##_fops = { \ |
| 14 | .open = name##_open, \ |
| 15 | .read = seq_read, \ |
| 16 | .llseek = seq_lseek, \ |
| 17 | .release = single_release, \ |
| 18 | }; |
| 19 | |
| 20 | /* debugfs.c */ |
| 21 | extern int ceph_debugfs_init(void); |
| 22 | extern void ceph_debugfs_cleanup(void); |
| 23 | extern int ceph_debugfs_client_init(struct ceph_client *client); |
| 24 | extern void ceph_debugfs_client_cleanup(struct ceph_client *client); |
| 25 | |
| 26 | #endif |
| 27 | |