Skip to content

Commit

Permalink
rcu: Use debugfs_remove_recursive() simplify code.
Browse files Browse the repository at this point in the history
Suggested by Josh Triplett.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: laijs@cn.fujitsu.com
Cc: dipankar@in.ibm.com
Cc: akpm@linux-foundation.org
Cc: mathieu.desnoyers@polymtl.ca
Cc: josht@linux.vnet.ibm.com
Cc: dvhltc@us.ibm.com
Cc: niv@us.ibm.com
Cc: peterz@infradead.org
Cc: rostedt@goodmis.org
Cc: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
LKML-Reference: <12509746132173-git-send-email->
Signed-off-by: Ingo Molnar <mingo@elte.hu>
  • Loading branch information
Paul E. McKenney authored and Ingo Molnar committed Aug 23, 2009
1 parent 65cf8f8 commit 22f00b6
Showing 1 changed file with 15 additions and 30 deletions.
45 changes: 15 additions & 30 deletions kernel/rcutree_trace.c
Original file line number Diff line number Diff line change
Expand Up @@ -265,62 +265,47 @@ static struct file_operations rcu_pending_fops = {
};

static struct dentry *rcudir;
static struct dentry *datadir;
static struct dentry *datadir_csv;
static struct dentry *gpdir;
static struct dentry *hierdir;
static struct dentry *rcu_pendingdir;

static int __init rcuclassic_trace_init(void)
{
struct dentry *retval;

rcudir = debugfs_create_dir("rcu", NULL);
if (!rcudir)
goto out;
goto free_out;

datadir = debugfs_create_file("rcudata", 0444, rcudir,
retval = debugfs_create_file("rcudata", 0444, rcudir,
NULL, &rcudata_fops);
if (!datadir)
if (!retval)
goto free_out;

datadir_csv = debugfs_create_file("rcudata.csv", 0444, rcudir,
retval = debugfs_create_file("rcudata.csv", 0444, rcudir,
NULL, &rcudata_csv_fops);
if (!datadir_csv)
if (!retval)
goto free_out;

gpdir = debugfs_create_file("rcugp", 0444, rcudir, NULL, &rcugp_fops);
if (!gpdir)
retval = debugfs_create_file("rcugp", 0444, rcudir, NULL, &rcugp_fops);
if (!retval)
goto free_out;

hierdir = debugfs_create_file("rcuhier", 0444, rcudir,
retval = debugfs_create_file("rcuhier", 0444, rcudir,
NULL, &rcuhier_fops);
if (!hierdir)
if (!retval)
goto free_out;

rcu_pendingdir = debugfs_create_file("rcu_pending", 0444, rcudir,
retval = debugfs_create_file("rcu_pending", 0444, rcudir,
NULL, &rcu_pending_fops);
if (!rcu_pendingdir)
if (!retval)
goto free_out;
return 0;
free_out:
if (datadir)
debugfs_remove(datadir);
if (datadir_csv)
debugfs_remove(datadir_csv);
if (gpdir)
debugfs_remove(gpdir);
debugfs_remove(rcudir);
out:
debugfs_remove_recursive(rcudir);
return 1;
}

static void __exit rcuclassic_trace_cleanup(void)
{
debugfs_remove(datadir);
debugfs_remove(datadir_csv);
debugfs_remove(gpdir);
debugfs_remove(hierdir);
debugfs_remove(rcu_pendingdir);
debugfs_remove(rcudir);
debugfs_remove_recursive(rcudir);
}


Expand Down

0 comments on commit 22f00b6

Please sign in to comment.