From 77cf3c5d7bf3384a0c0035c5f66b539817f04ff7 Mon Sep 17 00:00:00 2001 From: Sergey Cheremencev Date: Wed, 17 Jun 2020 14:01:13 +0300 Subject: [PATCH] LU-13686 utils: pool_add/remove error code fix jt_pool_cmd should always return error code, even if it failed to add/remove just one of OSTs from list. Before this patch it returned latest command result, ignoring previous failures. Change-Id: Ife6cefc006f061b47a1b00daf826d0d1d34fd66c Signed-off-by: Sergey Cheremencev Reviewed-on: https://review.whamcloud.com/38960 Reviewed-by: Andreas Dilger Reviewed-by: Vladimir Saveliev Tested-by: jenkins Tested-by: Maloo Reviewed-by: Oleg Drokin --- lustre/utils/obd.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lustre/utils/obd.c b/lustre/utils/obd.c index e824f24..f245a35 100644 --- a/lustre/utils/obd.c +++ b/lustre/utils/obd.c @@ -4975,18 +4975,20 @@ int jt_pool_cmd(int argc, char **argv) for (j = 0; j < array_sz; j++) { char ostname[MAX_OBD_NAME + 1]; + int rc2; snprintf(ostname, MAX_OBD_NAME, format, array[j]); ostname[MAX_OBD_NAME] = '\0'; - rc = check_and_complete_ostname(fsname, + rc2 = check_and_complete_ostname(fsname, ostname); - if (rc) { + if (rc2) { free(array); free(cmds); if (ostnames_buf) free(ostnames_buf); + rc = rc ? rc : rc2; goto out; } if (ostnames_buf) { -- 1.8.3.1