14d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg#include <linux/kernel.h>
24d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg#include <linux/module.h>
34d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg#include <linux/debugfs.h>
44d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg
54d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg#include "drbd_int.h"
64d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg
74d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg#ifdef CONFIG_DEBUG_FS
84d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergint __init drbd_debugfs_init(void);
94d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergvoid drbd_debugfs_cleanup(void);
104d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg
114d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergvoid drbd_debugfs_resource_add(struct drbd_resource *resource);
124d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergvoid drbd_debugfs_resource_cleanup(struct drbd_resource *resource);
134d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg
144d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergvoid drbd_debugfs_connection_add(struct drbd_connection *connection);
154d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergvoid drbd_debugfs_connection_cleanup(struct drbd_connection *connection);
164d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg
174d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergvoid drbd_debugfs_device_add(struct drbd_device *device);
184d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergvoid drbd_debugfs_device_cleanup(struct drbd_device *device);
194d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg
204d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergvoid drbd_debugfs_peer_device_add(struct drbd_peer_device *peer_device);
214d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergvoid drbd_debugfs_peer_device_cleanup(struct drbd_peer_device *peer_device);
224d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg#else
234d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg
244d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergstatic inline int __init drbd_debugfs_init(void) { return -ENODEV; }
254d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergstatic inline void drbd_debugfs_cleanup(void) { }
264d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg
274d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergstatic inline void drbd_debugfs_resource_add(struct drbd_resource *resource) { }
284d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergstatic inline void drbd_debugfs_resource_cleanup(struct drbd_resource *resource) { }
294d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg
304d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergstatic inline void drbd_debugfs_connection_add(struct drbd_connection *connection) { }
314d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergstatic inline void drbd_debugfs_connection_cleanup(struct drbd_connection *connection) { }
324d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg
334d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergstatic inline void drbd_debugfs_device_add(struct drbd_device *device) { }
344d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergstatic inline void drbd_debugfs_device_cleanup(struct drbd_device *device) { }
354d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg
364d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergstatic inline void drbd_debugfs_peer_device_add(struct drbd_peer_device *peer_device) { }
374d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenbergstatic inline void drbd_debugfs_peer_device_cleanup(struct drbd_peer_device *peer_device) { }
384d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg
394d3d5aa83aa45f1c7c9644b30e3a67e42c26695fLars Ellenberg#endif
40