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);
- if (rc) {
- CERROR("%s: Can't init sequence manager debugfs, rc %d\n",
- seq->lss_name, rc);
- GOTO(out_cleanup, rc);
- }
+ ldebugfs_add_vars(seq->lss_debugfs_entry,
+ seq_server_debugfs_list, seq);
if (seq->lss_type == LUSTRE_SEQ_CONTROLLER) {
rc = ldebugfs_seq_create(seq->lss_debugfs_entry, "fldb", 0644,
debugfs_remove_recursive(seq->lcs_debugfs_entry);
}
-static int seq_client_debugfs_init(struct lu_client_seq *seq)
+static void seq_client_debugfs_init(struct lu_client_seq *seq)
{
- int 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);
- if (rc) {
- CERROR("%s: Can't init sequence manager debugfs, rc %d\n",
- seq->lcs_name, rc);
- GOTO(out_cleanup, rc);
- }
-
- RETURN(0);
-
-out_cleanup:
- seq_client_debugfs_fini(seq);
- return rc;
+ ldebugfs_add_vars(seq->lcs_debugfs_entry,
+ seq_client_debugfs_list, seq);
}
void seq_client_fini(struct lu_client_seq *seq)
}
EXPORT_SYMBOL(seq_client_fini);
-int seq_client_init(struct lu_client_seq *seq,
- struct obd_export *exp,
- enum lu_cli_type type,
- const char *prefix,
- struct lu_server_seq *srv)
+void seq_client_init(struct lu_client_seq *seq,
+ struct obd_export *exp,
+ enum lu_cli_type type,
+ const char *prefix,
+ struct lu_server_seq *srv)
{
- int rc;
ENTRY;
LASSERT(seq != NULL);
snprintf(seq->lcs_name, sizeof(seq->lcs_name),
"cli-%s", prefix);
- rc = seq_client_debugfs_init(seq);
- if (rc)
- seq_client_fini(seq);
- RETURN(rc);
+ seq_client_debugfs_init(seq);
}
EXPORT_SYMBOL(seq_client_init);
{
struct client_obd *cli = &obd->u.cli;
char *prefix;
- int rc;
+ int rc = 0;
ENTRY;
down_write(&cli->cl_seq_rwsem);
snprintf(prefix, MAX_OBD_NAME + 5, "cli-%s", obd->obd_name);
/* Init client side sequence-manager */
- rc = seq_client_init(cli->cl_seq, exp, type, prefix, NULL);
+ seq_client_init(cli->cl_seq, exp, type, prefix, NULL);
OBD_FREE(prefix, MAX_OBD_NAME + 5);
- GOTO(out, rc);
-
out:
if (rc && cli->cl_seq) {
OBD_FREE_PTR(cli->cl_seq);
}
up_write(&cli->cl_seq_rwsem);
- return rc;
+ RETURN(rc);
}
EXPORT_SYMBOL(client_fid_init);
struct dentry *fld_debugfs_dir;
-static int fld_client_debugfs_init(struct lu_client_fld *fld)
+static void fld_client_debugfs_init(struct lu_client_fld *fld)
{
ENTRY;
fld->lcf_debugfs_entry = debugfs_create_dir(fld->lcf_name,
ldebugfs_add_vars(fld->lcf_debugfs_entry,
fld_client_debugfs_list,
fld);
-
- return 0;
}
void fld_client_debugfs_fini(struct lu_client_fld *fld)
const char *prefix, int hash)
{
int cache_size, cache_threshold;
- int rc;
+ int rc = 0;
ENTRY;
snprintf(fld->lcf_name, sizeof(fld->lcf_name),
GOTO(out, rc);
}
- rc = fld_client_debugfs_init(fld);
- if (rc)
- GOTO(out, rc);
+ fld_client_debugfs_init(fld);
EXIT;
out:
if (rc)
struct lprocfs_stats *stats);
/* lprocfs_status.c */
-extern int ldebugfs_add_vars(struct dentry *parent, struct lprocfs_vars *var,
- void *data);
+extern void ldebugfs_add_vars(struct dentry *parent, struct lprocfs_vars *var,
+ void *data);
extern int lprocfs_add_vars(struct proc_dir_entry *root,
struct lprocfs_vars *var, void *data);
int seq_server_check_and_alloc_super(const struct lu_env *env,
struct lu_server_seq *seq);
/* Client methods */
-int seq_client_init(struct lu_client_seq *seq,
- struct obd_export *exp,
- enum lu_cli_type type,
- const char *prefix,
- struct lu_server_seq *srv);
+void seq_client_init(struct lu_client_seq *seq,
+ struct obd_export *exp,
+ enum lu_cli_type type,
+ const char *prefix,
+ struct lu_server_seq *srv);
void seq_client_fini(struct lu_client_seq *seq);
int ldlm_debugfs_setup(void)
{
- int rc;
-
ENTRY;
ldlm_debugfs_dir = debugfs_create_dir(OBD_LDLM_DEVICENAME,
debugfs_lustre_root);
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) {
- CERROR("LProcFS failed in ldlm-init\n");
- GOTO(err, rc);
- }
+ ldebugfs_add_vars(ldlm_debugfs_dir, ldlm_debugfs_list, NULL);
RETURN(0);
-
-err:
- debugfs_remove_recursive(ldlm_debugfs_dir);
- ldlm_svc_debugfs_dir = NULL;
- ldlm_ns_debugfs_dir = NULL;
- ldlm_debugfs_dir = NULL;
- RETURN(rc);
}
void ldlm_debugfs_cleanup(void)
GOTO(out, rc = -ENOMEM);
snprintf(prefix, MAX_OBD_NAME + 7, "lfsck-%s", lfsck_lfsck2name(lfsck));
- rc = seq_client_init(lfsck->li_seq, NULL, LUSTRE_SEQ_METADATA, prefix,
+ seq_client_init(lfsck->li_seq, NULL, LUSTRE_SEQ_METADATA, prefix,
ss->ss_server_seq);
OBD_FREE(prefix, MAX_OBD_NAME + 7);
- if (rc != 0)
- GOTO(out, rc);
if (fid_is_sane(&bk->lb_last_fid))
lfsck->li_seq->lcs_fid = bk->lb_last_fid;
*/
static int mdt_seq_init_cli(const struct lu_env *env, struct mdt_device *mdt)
{
- struct seq_server_site *ss = mdt_seq_site(mdt);
- int rc;
- char *prefix;
+ struct seq_server_site *ss = mdt_seq_site(mdt);
+ char *prefix;
ENTRY;
/* check if this is adding the first MDC and controller is not yet
/* Note: seq_client_fini will be called in seq_site_fini */
snprintf(prefix, MAX_OBD_NAME + 5, "ctl-%s", mdt_obd_name(mdt));
- rc = seq_client_init(ss->ss_client_seq, NULL, LUSTRE_SEQ_METADATA,
- prefix, ss->ss_node_id == 0 ? ss->ss_control_seq :
+ seq_client_init(ss->ss_client_seq, NULL, LUSTRE_SEQ_METADATA,
+ prefix, ss->ss_node_id == 0 ? ss->ss_control_seq :
NULL);
OBD_FREE(prefix, MAX_OBD_NAME + 5);
- if (rc != 0) {
- OBD_FREE_PTR(ss->ss_client_seq);
- ss->ss_client_seq = NULL;
- RETURN(rc);
- }
- rc = seq_server_set_cli(env, ss->ss_server_seq, ss->ss_client_seq);
-
- RETURN(rc);
+ RETURN(seq_server_set_cli(env, ss->ss_server_seq, ss->ss_client_seq));
}
static int mdt_seq_init(const struct lu_env *env, struct mdt_device *mdt)
static const struct file_operations lprocfs_generic_fops = { };
-int ldebugfs_add_vars(struct dentry *parent, struct lprocfs_vars *list,
- void *data)
+void ldebugfs_add_vars(struct dentry *parent, struct lprocfs_vars *list,
+ void *data)
{
if (IS_ERR_OR_NULL(parent) || IS_ERR_OR_NULL(list))
- return -EINVAL;
+ return;
while (list->name) {
- struct dentry *entry;
umode_t mode = 0;
if (list->proc_mode != 0000) {
if (list->fops->write)
mode |= 0200;
}
- entry = debugfs_create_file(list->name, mode, parent,
- list->data ? : data,
- list->fops ? : &lprocfs_generic_fops);
- if (IS_ERR_OR_NULL(entry))
- return entry ? PTR_ERR(entry) : -ENOMEM;
+ debugfs_create_file(list->name, mode, parent,
+ list->data ? : data,
+ list->fops ? : &lprocfs_generic_fops);
list++;
}
- return 0;
}
EXPORT_SYMBOL_GPL(ldebugfs_add_vars);
snprintf(prefix, MAX_OBD_NAME + 5, "srv-%s", obd_name);
/* Init client side sequence-manager */
- rc = seq_client_init(ed->ed_cl_seq, NULL,
- LUSTRE_SEQ_METADATA,
- prefix, ss->ss_server_seq);
+ seq_client_init(ed->ed_cl_seq, NULL,
+ LUSTRE_SEQ_METADATA,
+ prefix, ss->ss_server_seq);
ed->ed_cl_seq->lcs_width = ECHO_SEQ_WIDTH;
OBD_FREE(prefix, MAX_OBD_NAME + 5);
- if (rc)
- GOTO(out_free_seq, rc);
RETURN(0);
GOTO(out_server, rc = -ENOMEM);
snprintf(name, len, "%s-super", obd_name);
- rc = seq_client_init(ss->ss_client_seq, NULL, LUSTRE_SEQ_DATA,
- name, NULL);
- if (rc) {
- CERROR("%s: seq client init error: rc = %d\n", obd_name, rc);
- GOTO(out_client, rc);
- }
+ seq_client_init(ss->ss_client_seq, NULL, LUSTRE_SEQ_DATA,
+ name, NULL);
rc = seq_server_set_cli(env, ss->ss_server_seq, ss->ss_client_seq);
if (rc) {
-out_client:
seq_client_fini(ss->ss_client_seq);
OBD_FREE_PTR(ss->ss_client_seq);
ss->ss_client_seq = NULL;
static int osd_fid_init(const struct lu_env *env, struct osd_device *osd)
{
struct seq_server_site *ss = osd_seq_site(osd);
- int rc;
+ int rc = 0;
ENTRY;
if (osd->od_cl_seq == NULL)
RETURN(-ENOMEM);
- rc = seq_client_init(osd->od_cl_seq, NULL, LUSTRE_SEQ_METADATA,
- osd->od_svname, ss->ss_server_seq);
- if (rc != 0) {
- OBD_FREE_PTR(osd->od_cl_seq);
- osd->od_cl_seq = NULL;
- RETURN(rc);
- }
+ seq_client_init(osd->od_cl_seq, NULL, LUSTRE_SEQ_METADATA,
+ osd->od_svname, ss->ss_server_seq);
if (ss->ss_node_id == 0) {
/*
static int osd_fid_init(const struct lu_env *env, struct osd_device *osd)
{
- struct seq_server_site *ss = osd_seq_site(osd);
- int rc;
+ struct seq_server_site *ss = osd_seq_site(osd);
+ int rc = 0;
ENTRY;
if (osd->od_is_ost || osd->od_cl_seq != NULL)
if (osd->od_cl_seq == NULL)
RETURN(-ENOMEM);
- rc = seq_client_init(osd->od_cl_seq, NULL, LUSTRE_SEQ_METADATA,
- osd->od_svname, ss->ss_server_seq);
-
- if (rc != 0) {
- OBD_FREE_PTR(osd->od_cl_seq);
- osd->od_cl_seq = NULL;
- }
+ seq_client_init(osd->od_cl_seq, NULL, LUSTRE_SEQ_METADATA,
+ osd->od_svname, ss->ss_server_seq);
if (ss->ss_node_id == 0) {
/*
if (!svc->srv_debugfs_entry)
return 0;
- return ldebugfs_add_vars(svc->srv_debugfs_entry, nrs_crrn_lprocfs_vars, NULL);
+ ldebugfs_add_vars(svc->srv_debugfs_entry, nrs_crrn_lprocfs_vars, NULL);
+
+ return 0;
}
/**
if (!svc->srv_debugfs_entry)
return 0;
- return ldebugfs_add_vars(svc->srv_debugfs_entry, nrs_delay_lprocfs_vars,
- NULL);
+ ldebugfs_add_vars(svc->srv_debugfs_entry, nrs_delay_lprocfs_vars, NULL);
+
+ return 0;
}
/**
for (i = 0; i < ARRAY_SIZE(nrs_orr_lprocfs_vars); i++)
nrs_orr_lprocfs_vars[i].data = &lprocfs_orr_data;
- return ldebugfs_add_vars(svc->srv_debugfs_entry, nrs_orr_lprocfs_vars,
- NULL);
+ ldebugfs_add_vars(svc->srv_debugfs_entry, nrs_orr_lprocfs_vars, NULL);
+
+ return 0;
}
static const struct ptlrpc_nrs_pol_ops nrs_orr_ops = {
for (i = 0; i < ARRAY_SIZE(nrs_trr_lprocfs_vars); i++)
nrs_trr_lprocfs_vars[i].data = &lprocfs_trr_data;
- return ldebugfs_add_vars(svc->srv_debugfs_entry, nrs_trr_lprocfs_vars,
- NULL);
+ ldebugfs_add_vars(svc->srv_debugfs_entry, nrs_trr_lprocfs_vars, NULL);
+
+ return 0;
}
/**
if (!svc->srv_debugfs_entry)
return 0;
- return ldebugfs_add_vars(svc->srv_debugfs_entry, nrs_tbf_lprocfs_vars,
- NULL);
+ ldebugfs_add_vars(svc->srv_debugfs_entry, nrs_tbf_lprocfs_vars, NULL);
+
+ return 0;
}
/**