Messages in this thread | | | Date | Mon, 9 Nov 2020 09:32:51 +0100 | From | Peter Zijlstra <> | Subject | Re: [PATCH] locking/lock_events: no need to check return value of debugfs_create functions |
| |
On Sat, Nov 07, 2020 at 05:19:13PM +0800, Tiezhu Yang wrote: > When calling debugfs functions, there is no need to ever check the > return value. The function can work or not, but the code logic should > never do something different based on this.
I strongly disagree and have told this to Greg before. Having half a debug interface is weird at best, so upon failure we remove the whole thing, which is consistent.
> Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn> > --- > kernel/locking/lock_events.c | 19 ++++--------------- > 1 file changed, 4 insertions(+), 15 deletions(-) > > diff --git a/kernel/locking/lock_events.c b/kernel/locking/lock_events.c > index fa2c2f9..bac77a1 100644 > --- a/kernel/locking/lock_events.c > +++ b/kernel/locking/lock_events.c > @@ -146,9 +146,6 @@ static int __init init_lockevent_counts(void) > struct dentry *d_counts = debugfs_create_dir(LOCK_EVENTS_DIR, NULL); > int i; > > - if (!d_counts) > - goto out; > - > /* > * Create the debugfs files > * > @@ -159,21 +156,13 @@ static int __init init_lockevent_counts(void) > for (i = 0; i < lockevent_num; i++) { > if (skip_lockevent(lockevent_names[i])) > continue; > - if (!debugfs_create_file(lockevent_names[i], 0400, d_counts, > - (void *)(long)i, &fops_lockevent)) > - goto fail_undo; > + debugfs_create_file(lockevent_names[i], 0400, d_counts, > + (void *)(long)i, &fops_lockevent); > } > > - if (!debugfs_create_file(lockevent_names[LOCKEVENT_reset_cnts], 0200, > - d_counts, (void *)(long)LOCKEVENT_reset_cnts, > - &fops_lockevent)) > - goto fail_undo; > + debugfs_create_file(lockevent_names[LOCKEVENT_reset_cnts], 0200, d_counts, > + (void *)(long)LOCKEVENT_reset_cnts, &fops_lockevent); > > return 0; > -fail_undo: > - debugfs_remove_recursive(d_counts); > -out: > - pr_warn("Could not create '%s' debugfs entries\n", LOCK_EVENTS_DIR); > - return -ENOMEM; > } > fs_initcall(init_lockevent_counts); > -- > 2.1.0 >
| |