Skip to content
Permalink
Browse files
ceph: add helpers to create/cleanup debugfs sub-directories under "ce…
…ph" directory

Callers can use this helper to create a subdirectory under
"ceph" directory in debugfs to place custom files for exporting
information to userspace.

Signed-off-by: Venky Shankar <vshankar@redhat.com>
  • Loading branch information
vshankar authored and intel-lab-lkp committed Aug 18, 2021
1 parent 8434ffe commit 93ace7e15eedcf62ee9a96c7396482133470e651
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 2 deletions.
@@ -10,5 +10,8 @@ extern void ceph_debugfs_cleanup(void);
extern void ceph_debugfs_client_init(struct ceph_client *client);
extern void ceph_debugfs_client_cleanup(struct ceph_client *client);

extern struct dentry *ceph_debugfs_create_subdir(const char *subdir);
extern void ceph_debugfs_cleanup_subdir(struct dentry *subdir_dentry);

#endif

@@ -404,6 +404,18 @@ void ceph_debugfs_cleanup(void)
debugfs_remove(ceph_debugfs_dir);
}

struct dentry *ceph_debugfs_create_subdir(const char *subdir)
{
return debugfs_create_dir(subdir, ceph_debugfs_dir);
}
EXPORT_SYMBOL(ceph_debugfs_create_subdir);

void ceph_debugfs_cleanup_subdir(struct dentry *subdir_dentry)
{
debugfs_remove(subdir_dentry);
}
EXPORT_SYMBOL(ceph_debugfs_cleanup_subdir);

void ceph_debugfs_client_init(struct ceph_client *client)
{
char name[80];
@@ -413,7 +425,7 @@ void ceph_debugfs_client_init(struct ceph_client *client)

dout("ceph_debugfs_client_init %p %s\n", client, name);

client->debugfs_dir = debugfs_create_dir(name, ceph_debugfs_dir);
client->debugfs_dir = ceph_debugfs_create_subdir(name);

client->monc.debugfs_file = debugfs_create_file("monc",
0400,
@@ -454,7 +466,7 @@ void ceph_debugfs_client_cleanup(struct ceph_client *client)
debugfs_remove(client->debugfs_monmap);
debugfs_remove(client->osdc.debugfs_file);
debugfs_remove(client->monc.debugfs_file);
debugfs_remove(client->debugfs_dir);
ceph_debugfs_cleanup_subdir(client->debugfs_dir);
}

#else /* CONFIG_DEBUG_FS */
@@ -475,4 +487,14 @@ void ceph_debugfs_client_cleanup(struct ceph_client *client)
{
}

struct dentry *ceph_debugfs_create_subdir(const char *subdir)
{
}
EXPORT_SYMBOL(ceph_debugfs_create_subdir);

void ceph_debugfs_cleanup_subdir(struct dentry *subdir_dentry)
{
}
EXPORT_SYMBOL(ceph_debugfs_cleanup_subdir);

#endif /* CONFIG_DEBUG_FS */

0 comments on commit 93ace7e

Please sign in to comment.