From e79cbe8f935d65e0abaef8c4e7a19ec4816f492b Mon Sep 17 00:00:00 2001 From: Mr NeilBrown Date: Thu, 27 Feb 2020 14:58:57 +1100 Subject: [PATCH] LU-6142 lustre: unwrap some ldebugfs_register() calls When the third option (list) to ldebugfs_register() is NULL, it's the same as just calling debugfs_create_dir(). So unwind this and call debugfs_create_dir() directly. This ends up saving lots of code as we do not need to do any error checking of the return value (because it does not matter). Note: this depends on Commit a59d6293e537 ("debugfs: change parameter check in debugfs_remove() functions") which landed in v3.6-rc1. Linux-Commit b145f49f233d ("staging: lustre: unwrap some ldebugfs_register() calls") Test-Parameters: trivial Signed-off-by: Greg Kroah-Hartman Signed-off-by: Mr NeilBrown Change-Id: I6bff3b1d416de1f15bb95b22fa6075b1ae30a534 Signed-off-by: Mr NeilBrown Reviewed-on: https://review.whamcloud.com/37742 Tested-by: jenkins Tested-by: Maloo Reviewed-by: Andreas Dilger Reviewed-by: James Simmons Reviewed-by: Oleg Drokin --- lustre/fid/fid_handler.c | 11 ++--------- lustre/fid/fid_request.c | 17 ++++------------- lustre/fld/fld_handler.c | 11 ++--------- lustre/fld/fld_request.c | 10 +++------- lustre/ldlm/ldlm_pool.c | 10 +--------- lustre/ldlm/ldlm_resource.c | 35 ++++++----------------------------- lustre/ptlrpc/lproc_ptlrpc.c | 11 +++-------- 7 files changed, 21 insertions(+), 84 deletions(-) diff --git a/lustre/fid/fid_handler.c b/lustre/fid/fid_handler.c index 1d9b560..3f66122 100644 --- a/lustre/fid/fid_handler.c +++ b/lustre/fid/fid_handler.c @@ -466,15 +466,8 @@ static int seq_server_debugfs_init(struct lu_server_seq *seq) int rc; ENTRY; - seq->lss_debugfs_entry = ldebugfs_register(seq->lss_name, - seq_debugfs_dir, - NULL, NULL); - if (IS_ERR_OR_NULL(seq->lss_debugfs_entry)) { - rc = seq->lss_debugfs_entry ? PTR_ERR(seq->lss_debugfs_entry) - : -ENOMEM; - seq->lss_debugfs_entry = NULL; - RETURN(rc); - } + seq->lss_debugfs_entry = debugfs_create_dir(seq->lss_name, + seq_debugfs_dir); rc = ldebugfs_add_vars(seq->lss_debugfs_entry, seq_server_debugfs_list, seq); diff --git a/lustre/fid/fid_request.c b/lustre/fid/fid_request.c index 95eb71a..46ffee2 100644 --- a/lustre/fid/fid_request.c +++ b/lustre/fid/fid_request.c @@ -444,16 +444,8 @@ static int seq_client_debugfs_init(struct lu_client_seq *seq) { int rc; - seq->lcs_debugfs_entry = ldebugfs_register(seq->lcs_name, - seq_debugfs_dir, - NULL, NULL); - if (IS_ERR_OR_NULL(seq->lcs_debugfs_entry)) { - CERROR("%s: LdebugFS failed in seq-init\n", seq->lcs_name); - rc = seq->lcs_debugfs_entry ? PTR_ERR(seq->lcs_debugfs_entry) - : -ENOMEM; - seq->lcs_debugfs_entry = NULL; - RETURN(rc); - } + seq->lcs_debugfs_entry = debugfs_create_dir(seq->lcs_name, + seq_debugfs_dir); rc = ldebugfs_add_vars(seq->lcs_debugfs_entry, seq_client_debugfs_list, seq); @@ -586,9 +578,8 @@ static int __init fid_init(void) if (rc) return rc; #endif - de = ldebugfs_register(LUSTRE_SEQ_NAME, - debugfs_lustre_root, - NULL, NULL); + de = debugfs_create_dir(LUSTRE_SEQ_NAME, + debugfs_lustre_root); if (!IS_ERR(de)) seq_debugfs_dir = de; return PTR_ERR_OR_ZERO(de); diff --git a/lustre/fld/fld_handler.c b/lustre/fld/fld_handler.c index 12bdcc0..f8a7f5a 100644 --- a/lustre/fld/fld_handler.c +++ b/lustre/fld/fld_handler.c @@ -410,15 +410,8 @@ static int fld_server_debugfs_init(struct lu_server_fld *fld) int rc = 0; ENTRY; - fld->lsf_debugfs_entry = ldebugfs_register(fld->lsf_name, - fld_debugfs_dir, - NULL, NULL); - if (IS_ERR_OR_NULL(fld->lsf_debugfs_entry)) { - rc = fld->lsf_debugfs_entry ? PTR_ERR(fld->lsf_debugfs_entry) - : -ENOMEM; - fld->lsf_debugfs_entry = NULL; - RETURN(rc); - } + fld->lsf_debugfs_entry = debugfs_create_dir(fld->lsf_name, + fld_debugfs_dir); rc = ldebugfs_seq_create(fld->lsf_debugfs_entry, "fldb", 0444, &fld_debugfs_seq_fops, fld); diff --git a/lustre/fld/fld_request.c b/lustre/fld/fld_request.c index 1498c70..c1d8fa9 100644 --- a/lustre/fld/fld_request.c +++ b/lustre/fld/fld_request.c @@ -522,7 +522,6 @@ void fld_client_flush(struct lu_client_fld *fld) static int __init fld_init(void) { - struct dentry *de; #ifdef HAVE_SERVER_SUPPORT int rc; @@ -531,12 +530,9 @@ static int __init fld_init(void) return rc; #endif /* HAVE_SERVER_SUPPORT */ - de = ldebugfs_register(LUSTRE_FLD_NAME, - debugfs_lustre_root, - NULL, NULL); - if (!IS_ERR(de)) - fld_debugfs_dir = de; - return PTR_ERR_OR_ZERO(de); + fld_debugfs_dir = debugfs_create_dir(LUSTRE_FLD_NAME, + debugfs_lustre_root); + return PTR_ERR_OR_ZERO(fld_debugfs_dir); } static void __exit fld_exit(void) diff --git a/lustre/ldlm/ldlm_pool.c b/lustre/ldlm/ldlm_pool.c index 95ad36b..3bb6fed 100644 --- a/lustre/ldlm/ldlm_pool.c +++ b/lustre/ldlm/ldlm_pool.c @@ -799,15 +799,7 @@ static int ldlm_pool_debugfs_init(struct ldlm_pool *pl) ldlm_ns_name(ns)); GOTO(out, rc = -EINVAL); } - pl->pl_debugfs_entry = ldebugfs_register("pool", debugfs_ns_parent, - NULL, NULL); - if (IS_ERR(pl->pl_debugfs_entry)) { - rc = PTR_ERR(pl->pl_debugfs_entry); - pl->pl_debugfs_entry = NULL; - CERROR("%s: cannot create 'pool' debugfs entry: rc = %d\n", - ldlm_ns_name(ns), rc); - GOTO(out, rc); - } + pl->pl_debugfs_entry = debugfs_create_dir("pool", debugfs_ns_parent); memset(pool_vars, 0, sizeof(pool_vars)); diff --git a/lustre/ldlm/ldlm_resource.c b/lustre/ldlm/ldlm_resource.c index 490e7c5..928fa98 100644 --- a/lustre/ldlm/ldlm_resource.c +++ b/lustre/ldlm/ldlm_resource.c @@ -233,35 +233,12 @@ int ldlm_debugfs_setup(void) int rc; ENTRY; - ldlm_debugfs_dir = ldebugfs_register(OBD_LDLM_DEVICENAME, - debugfs_lustre_root, - NULL, NULL); - if (IS_ERR_OR_NULL(ldlm_debugfs_dir)) { - CERROR("LDebugFS failed in ldlm-init\n"); - rc = ldlm_debugfs_dir ? PTR_ERR(ldlm_debugfs_dir) : -ENOMEM; - ldlm_debugfs_dir = NULL; - GOTO(err, rc); - } - - ldlm_ns_debugfs_dir = ldebugfs_register("namespaces", - ldlm_debugfs_dir, - NULL, NULL); - if (IS_ERR_OR_NULL(ldlm_ns_debugfs_dir)) { - CERROR("LProcFS failed in ldlm-init\n"); - rc = ldlm_ns_debugfs_dir ? PTR_ERR(ldlm_ns_debugfs_dir) - : -ENOMEM; - GOTO(err, rc); - } - - ldlm_svc_debugfs_dir = ldebugfs_register("services", - ldlm_debugfs_dir, - NULL, NULL); - if (IS_ERR_OR_NULL(ldlm_svc_debugfs_dir)) { - CERROR("LProcFS failed in ldlm-init\n"); - rc = ldlm_svc_debugfs_dir ? PTR_ERR(ldlm_svc_debugfs_dir) - : -ENOMEM; - GOTO(err, rc); - } + ldlm_debugfs_dir = debugfs_create_dir(OBD_LDLM_DEVICENAME, + debugfs_lustre_root); + ldlm_ns_debugfs_dir = debugfs_create_dir("namespaces", + ldlm_debugfs_dir); + ldlm_svc_debugfs_dir = debugfs_create_dir("services", + ldlm_debugfs_dir); rc = ldebugfs_add_vars(ldlm_debugfs_dir, ldlm_debugfs_list, NULL); if (rc != 0) { diff --git a/lustre/ptlrpc/lproc_ptlrpc.c b/lustre/ptlrpc/lproc_ptlrpc.c index dcc5d07..35672a7 100644 --- a/lustre/ptlrpc/lproc_ptlrpc.c +++ b/lustre/ptlrpc/lproc_ptlrpc.c @@ -215,15 +215,10 @@ ptlrpc_ldebugfs_register(struct dentry *root, char *dir, char *name, if (!svc_stats) return; - if (dir) { - svc_debugfs_entry = ldebugfs_register(dir, root, NULL, NULL); - if (IS_ERR(svc_debugfs_entry)) { - lprocfs_free_stats(&svc_stats); - return; - } - } else { + if (dir) + svc_debugfs_entry = debugfs_create_dir(dir, root); + else svc_debugfs_entry = root; - } lprocfs_counter_init(svc_stats, PTLRPC_REQWAIT_CNTR, svc_counter_config, "req_waittime", "usec"); -- 1.8.3.1