X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Futils%2Fliblustreapi.c;h=cf27a9bbf85a76bd3c59b0d258cb0621a6e39484;hp=44747e6d135e9f22b3ed02a00e16fda60f00f7d3;hb=a1c8e27ca38de157c2ce4ecf3f21392a079ac1a0;hpb=44b6af40f70cf065e8198b6b438d6c953063d003 diff --git a/lustre/utils/liblustreapi.c b/lustre/utils/liblustreapi.c index 44747e6..cf27a9b 100644 --- a/lustre/utils/liblustreapi.c +++ b/lustre/utils/liblustreapi.c @@ -72,11 +72,16 @@ #include #include #include +#include #include #include "lustreapi_internal.h" static int llapi_msg_level = LLAPI_MSG_MAX; +char *mdt_hash_name[] = { "none", + LMV_HASH_NAME_ALL_CHARS, + LMV_HASH_NAME_FNV_1A_64 }; + void llapi_msg_set_level(int level) { /* ensure level is in the good range */ @@ -2332,7 +2337,8 @@ void lmv_dump_user_lmm(struct lmv_user_md *lum, char *pool_name, /* show all information default */ if (!verbose) { if (lum->lum_magic == LMV_USER_MAGIC) - verbose = VERBOSE_POOL | VERBOSE_COUNT | VERBOSE_OFFSET; + verbose = VERBOSE_POOL | VERBOSE_COUNT | + VERBOSE_OFFSET | VERBOSE_HASH_TYPE; else verbose = VERBOSE_OBJID; } @@ -2358,6 +2364,24 @@ void lmv_dump_user_lmm(struct lmv_user_md *lum, char *pool_name, llapi_printf(LLAPI_MSG_NORMAL, "lmv_stripe_offset: "); llapi_printf(LLAPI_MSG_NORMAL, "%d", (int)lum->lum_stripe_offset); + if (verbose & VERBOSE_HASH_TYPE) + separator = " "; + else + separator = "\n"; + } + + if (verbose & VERBOSE_HASH_TYPE) { + unsigned int type = lum->lum_hash_type; + + llapi_printf(LLAPI_MSG_NORMAL, "%s", separator); + if (verbose & ~VERBOSE_HASH_TYPE) + llapi_printf(LLAPI_MSG_NORMAL, "lmv_hash_type: "); + if (type < LMV_HASH_TYPE_MAX) + llapi_printf(LLAPI_MSG_NORMAL, "%s", + mdt_hash_name[type]); + else + llapi_printf(LLAPI_MSG_NORMAL, "%d", + (int)type); separator = "\n"; } @@ -2692,9 +2716,10 @@ static int print_failed_tgt(struct find_param *param, char *path, int type) { struct obd_statfs stat_buf; struct obd_uuid uuid_buf; - int ret; + int ret; - LASSERT(type == LL_STATFS_LOV || type == LL_STATFS_LMV); + if (type != LL_STATFS_LOV && type != LL_STATFS_LMV) + return -EINVAL; memset(&stat_buf, 0, sizeof(struct obd_statfs)); memset(&uuid_buf, 0, sizeof(struct obd_uuid)); @@ -2722,7 +2747,8 @@ static int cb_find_init(char *path, DIR *parent, DIR **dirp, int checked_type = 0; int ret = 0; - LASSERT(parent != NULL || dir != NULL); + if (parent == NULL && dir == NULL) + return -EINVAL; param->fp_lmd->lmd_lmm.lmm_stripe_count = 0; @@ -3058,7 +3084,9 @@ static int cb_migrate_mdt_init(char *path, DIR *parent, DIR **dirp, char *filename; bool retry = false; - LASSERT(parent != NULL || dirp != NULL); + if (parent == NULL && dirp == NULL) + return -EINVAL; + if (dirp != NULL) closedir(*dirp); @@ -3140,7 +3168,7 @@ int llapi_migrate_mdt(char *path, struct find_param *param) int llapi_mv(char *path, struct find_param *param) { -#if LUSTRE_VERSION_CODE > OBD_OCD_VERSION(2, 9, 53, 0) +#if LUSTRE_VERSION_CODE > OBD_OCD_VERSION(2, 9, 59, 0) static bool printed; if (!printed) { @@ -3177,7 +3205,8 @@ static int cb_get_mdt_index(char *path, DIR *parent, DIR **dirp, void *data, int ret; int mdtidx; - LASSERT(parent != NULL || d != NULL); + if (parent == NULL && d == NULL) + return -EINVAL; if (d != NULL) { ret = llapi_file_fget_mdtidx(dirfd(d), &mdtidx); @@ -3239,7 +3268,8 @@ static int cb_getstripe(char *path, DIR *parent, DIR **dirp, void *data, DIR *d = dirp == NULL ? NULL : *dirp; int ret = 0; - LASSERT(parent != NULL || d != NULL); + if (parent == NULL && d == NULL) + return -EINVAL; if (param->fp_obd_uuid) { param->fp_quiet = 1;