From d4609e4e8a57eb412d56b3faf5d523037aabba14 Mon Sep 17 00:00:00 2001 From: nathan Date: Tue, 27 Jun 2006 22:23:23 +0000 Subject: [PATCH] Branch b1_5 b=8007 -include luster vers in log markers -fix missing index processing in tunefs.lustre --- lustre/include/lustre/lustre_idl.h | 3 ++- lustre/mgs/mgs_llog.c | 2 ++ lustre/utils/llog_reader.c | 9 +++++++-- lustre/utils/mkfs_lustre.c | 19 ++++++++++++------- 4 files changed, 23 insertions(+), 10 deletions(-) diff --git a/lustre/include/lustre/lustre_idl.h b/lustre/include/lustre/lustre_idl.h index ed9b6f4..61d3f64 100644 --- a/lustre/include/lustre/lustre_idl.h +++ b/lustre/include/lustre/lustre_idl.h @@ -1077,8 +1077,9 @@ extern void lustre_swab_mgs_target_info(struct mgs_target_info *oinfo); #define CM_START_SKIP (CM_START | CM_SKIP) struct cfg_marker { - __u32 cm_step; /* aka config version */ + __u32 cm_step; /* aka config version */ __u32 cm_flags; + __u32 cm_vers; /* lustre release version number */ time_t cm_createtime; /*when this record was first created */ time_t cm_canceltime; /*when this record is no longer valid*/ char cm_svname[16]; diff --git a/lustre/mgs/mgs_llog.c b/lustre/mgs/mgs_llog.c index 2294207..7dbf272 100644 --- a/lustre/mgs/mgs_llog.c +++ b/lustre/mgs/mgs_llog.c @@ -44,6 +44,7 @@ #include #include #include +#include #include "mgs_internal.h" /********************** Class fns ********************/ @@ -645,6 +646,7 @@ static int record_marker(struct obd_device *obd, struct llog_handle *llh, fsdb->fsdb_gen++; marker.cm_step = fsdb->fsdb_gen; marker.cm_flags = flags; + marker.cm_vers = LUSTRE_VERSION_CODE; strncpy(marker.cm_svname, svname, sizeof(marker.cm_svname)); strncpy(marker.cm_comment, comment, sizeof(marker.cm_comment)); do_gettimeofday(&tv); diff --git a/lustre/utils/llog_reader.c b/lustre/utils/llog_reader.c index 6b5601d..a2c49c2 100644 --- a/lustre/utils/llog_reader.c +++ b/lustre/utils/llog_reader.c @@ -334,8 +334,13 @@ void print_lustre_cfg(struct lustre_cfg *lcfg, int *skip) if (marker->cm_flags & CM_END) (*skip)--; } - printf("marker %d (flags=%#x) %.16s '%s' %s:%s", marker->cm_step, - marker->cm_flags, marker->cm_svname, + printf("marker %d (flags=%#x, v%d.%d.%d.%d) %.16s '%s' %s:%s", + marker->cm_step, marker->cm_flags, + OBD_OCD_VERSION_MAJOR(marker->cm_vers), + OBD_OCD_VERSION_MINOR(marker->cm_vers), + OBD_OCD_VERSION_PATCH(marker->cm_vers), + OBD_OCD_VERSION_FIX(marker->cm_vers), + marker->cm_svname, marker->cm_comment, ctime(&marker->cm_createtime), marker->cm_canceltime ? ctime(&marker->cm_canceltime) : ""); diff --git a/lustre/utils/mkfs_lustre.c b/lustre/utils/mkfs_lustre.c index 99345b1..45634b4 100644 --- a/lustre/utils/mkfs_lustre.c +++ b/lustre/utils/mkfs_lustre.c @@ -86,7 +86,7 @@ void usage(FILE *out) "\t\t--fsname= : default is 'lustre'\n" "\t\t--failnode=[,<...>] : NID(s) of a failover partner\n" "\t\t--param = : set a permanent parameter\n" - "\t\t--index=#N : target index\n" + "\t\t--index=#N : target index (i.e. ost index within the lov)\n" /* FIXME implement 1.6.x "\t\t--configdev=: store configuration info\n" "\t\t\tfor this device on an alternate device\n" @@ -778,7 +778,6 @@ int read_local_files(struct mkfs_opts *mop) if (ret) goto out_close; } - ret = 0; vprint("Feature compat=%x, incompat=%x\n", lsd.lsd_feature_compat, lsd.lsd_feature_incompat); @@ -822,11 +821,11 @@ int read_local_files(struct mkfs_opts *mop) mop->mo_ldd.ldd_flags = LDD_F_SV_TYPE_OST | LDD_F_NEED_INDEX; verrprint("OST with unknown index\n"); - } } } - + + ret = 0; memcpy(mop->mo_ldd.ldd_uuid, lsd.lsd_uuid, sizeof(mop->mo_ldd.ldd_uuid)); mop->mo_ldd.ldd_flags |= LDD_F_UPGRADE14; @@ -1161,7 +1160,6 @@ int main(int argc, char *const argv[]) if (!(IS_MDT(ldd) || IS_OST(ldd) || IS_MGS(ldd))) { fatal(); fprintf(stderr, "must set target type: MDT,OST,MGS\n"); - usage(stderr); ret = EINVAL; goto out; } @@ -1169,7 +1167,15 @@ int main(int argc, char *const argv[]) if (((IS_MDT(ldd) || IS_MGS(ldd))) && IS_OST(ldd)) { fatal(); fprintf(stderr, "OST type is exclusive with MDT,MGS\n"); - usage(stderr); + ret = EINVAL; + goto out; + } + + if ((mop.mo_ldd.ldd_flags & (LDD_F_NEED_INDEX | LDD_F_UPGRADE14)) == + (LDD_F_NEED_INDEX | LDD_F_UPGRADE14)) { + fatal(); + fprintf(stderr, "Can't find the target index, " + "specify with --index\n"); ret = EINVAL; goto out; } @@ -1183,7 +1189,6 @@ int main(int argc, char *const argv[]) if (!IS_MGS(ldd) && (mop.mo_mgs_failnodes == 0)) { fatal(); fprintf(stderr, "Must specify either --mgs or --mgsnode\n"); - usage(stderr); ret = EINVAL; goto out; } -- 1.8.3.1