From 2888753e88ac3b7875b5b008085146bbd47c8125 Mon Sep 17 00:00:00 2001 From: yury Date: Thu, 22 Jun 2006 14:18:55 +0000 Subject: [PATCH] - removed not used seq_flags from client and server seq-mgr code; - added reporting sequence-controller node via /proc/fs/lustre/seq/... --- lustre/fid/fid_handler.c | 3 +-- lustre/fid/fid_request.c | 4 +--- lustre/fid/lproc_fid.c | 32 ++++++++++++++++++++++++++++---- lustre/include/lustre_fid.h | 11 ++--------- lustre/mdc/mdc_request.c | 2 +- lustre/mdt/mdt_handler.c | 6 ++---- 6 files changed, 35 insertions(+), 23 deletions(-) diff --git a/lustre/fid/fid_handler.c b/lustre/fid/fid_handler.c index 87d9152..50c428f 100644 --- a/lustre/fid/fid_handler.c +++ b/lustre/fid/fid_handler.c @@ -442,7 +442,7 @@ void seq_server_proc_fini(struct lu_server_seq *seq) int seq_server_init(struct lu_server_seq *seq, - struct dt_device *dev, int flags, + struct dt_device *dev, const struct lu_context *ctx) { int rc; @@ -462,7 +462,6 @@ seq_server_init(struct lu_server_seq *seq, seq->seq_dev = dev; seq->seq_cli = NULL; - seq->seq_flags = flags; sema_init(&seq->seq_sem, 1); seq->seq_space = LUSTRE_SEQ_SPACE_RANGE; diff --git a/lustre/fid/fid_request.c b/lustre/fid/fid_request.c index f6934bd..86afbda 100644 --- a/lustre/fid/fid_request.c +++ b/lustre/fid/fid_request.c @@ -250,14 +250,12 @@ EXPORT_SYMBOL(seq_client_alloc_fid); int seq_client_init(struct lu_client_seq *seq, - struct obd_export *exp, - int flags) + struct obd_export *exp) { ENTRY; LASSERT(exp != NULL); - seq->seq_flags = flags; fid_zero(&seq->seq_fid); range_zero(&seq->seq_range); sema_init(&seq->seq_sem, 1); diff --git a/lustre/fid/lproc_fid.c b/lustre/fid/lproc_fid.c index e0691d8..188cd67 100644 --- a/lustre/fid/lproc_fid.c +++ b/lustre/fid/lproc_fid.c @@ -100,7 +100,7 @@ seq_proc_write_space(struct file *file, const char *buffer, seq_proc_write_range(file, buffer, count, data, &seq->seq_space); - CDEBUG(D_WARNING, "sequences space range is changed " + CDEBUG(D_WARNING, "SEQ-MGR(srv): sequences space is changed " "to ["LPU64"-"LPU64"]\n", seq->seq_space.lr_start, seq->seq_space.lr_end); @@ -140,7 +140,7 @@ seq_proc_write_super(struct file *file, const char *buffer, seq_proc_write_range(file, buffer, count, data, &seq->seq_super); - CDEBUG(D_WARNING, "super-sequence range is changed to " + CDEBUG(D_WARNING, "SEQ-MGR(srv): super-sequence is changed to " "["LPU64"-"LPU64"]\n", seq->seq_super.lr_start, seq->seq_super.lr_end); @@ -167,8 +167,32 @@ seq_proc_read_super(char *page, char **start, off_t off, RETURN(rc); } +static int +seq_proc_read_controller(char *page, char **start, off_t off, + int count, int *eof, void *data) +{ + struct lu_server_seq *seq = (struct lu_server_seq *)data; + int rc; + ENTRY; + + LASSERT(seq != NULL); + + *eof = 1; + if (seq->seq_cli) { + struct obd_export *exp = seq->seq_cli->seq_exp; + + rc = snprintf(page, count, "%s\n", + exp->exp_client_uuid.uuid); + } else { + rc = snprintf(page, count, "\n"); + } + + RETURN(rc); +} + struct lprocfs_vars seq_proc_list[] = { - { "space", seq_proc_read_space, seq_proc_write_space, NULL }, - { "super", seq_proc_read_super, seq_proc_write_super, NULL }, + { "space", seq_proc_read_space, seq_proc_write_space, NULL }, + { "super", seq_proc_read_super, seq_proc_write_super, NULL }, + { "controller", seq_proc_read_controller, NULL, NULL }, { NULL }}; #endif diff --git a/lustre/include/lustre_fid.h b/lustre/include/lustre_fid.h index f7474c2..305b545 100644 --- a/lustre/include/lustre_fid.h +++ b/lustre/include/lustre_fid.h @@ -55,9 +55,6 @@ struct lu_client_seq { struct obd_export *seq_exp; struct semaphore seq_sem; - /* different flags. */ - int seq_flags; - /* range of allowed for allocation sequeces. When using lu_client_seq on * clients, this contains meta-sequence range. And for servers this * contains super-sequence range. */ @@ -84,9 +81,6 @@ struct lu_server_seq { * store). */ struct dt_device *seq_dev; - /* different flags: LUSTRE_SEQ_CONTROLLER, etc. */ - int seq_flags; - /* seq related proc */ cfs_proc_dir_entry_t *seq_proc_entry; @@ -103,7 +97,7 @@ struct lu_server_seq { #ifdef __KERNEL__ int seq_server_init(struct lu_server_seq *seq, - struct dt_device *dev, int flags, + struct dt_device *dev, const struct lu_context *ctx); void seq_server_fini(struct lu_server_seq *seq, @@ -115,8 +109,7 @@ int seq_server_controller(struct lu_server_seq *seq, #endif int seq_client_init(struct lu_client_seq *seq, - struct obd_export *exp, - int flags); + struct obd_export *exp); void seq_client_fini(struct lu_client_seq *seq); diff --git a/lustre/mdc/mdc_request.c b/lustre/mdc/mdc_request.c index 344dddb..c7cdece 100644 --- a/lustre/mdc/mdc_request.c +++ b/lustre/mdc/mdc_request.c @@ -1067,7 +1067,7 @@ static int mdc_fid_init(struct obd_export *exp) RETURN(-ENOMEM); /* init client side sequence-manager */ - rc = seq_client_init(cli->cl_seq, exp, 0); + rc = seq_client_init(cli->cl_seq, exp); if (rc) GOTO(out_free_seq, rc); diff --git a/lustre/mdt/mdt_handler.c b/lustre/mdt/mdt_handler.c index 415acb8..f79bdd0 100644 --- a/lustre/mdt/mdt_handler.c +++ b/lustre/mdt/mdt_handler.c @@ -1692,8 +1692,7 @@ static int mdt_seq_init(const struct lu_context *ctx, if (ls->ls_server_seq != NULL) { rc = seq_server_init(ls->ls_server_seq, - m->mdt_bottom, - 0, ctx); + m->mdt_bottom, ctx); } else rc = -ENOMEM; @@ -1749,8 +1748,7 @@ static int mdt_controller_init(const struct lu_context *ctx, if (ls->ls_client_seq != NULL) { rc = seq_client_init(ls->ls_client_seq, - ls->ls_controller, - 0); + ls->ls_controller); } else rc = -ENOMEM; -- 1.8.3.1