Details
-
Bug
-
Resolution: Fixed
-
Major
-
Lustre 2.8.0
-
lustre-2.8.0_8.chaos
-
3
-
9223372036854775807
Description
lfs changelog <mdtname>
parses the index of mdtname incorrectly, causing it to fetch the wrong changelog entries if the index contains letters [A-F] (e.g. lquake-MDT000A).
The error appears to be here:
diff --git a/lustre/utils/liblustreapi.c b/lustre/utils/liblustreapi.c index 9301383..38e2085 100644 --- a/lustre/utils/liblustreapi.c +++ b/lustre/utils/liblustreapi.c @@ -3985,7 +3985,7 @@ int root_ioctl(const char *mdtname, int opc, void *data, int *mdtidxp, return -EINVAL; ptr = fsname + strlen(fsname) - 8; *ptr = '\0'; - index = strtol(ptr + 4, NULL, 10); + index = strtol(ptr + 4, NULL, 16); rc = get_root_path(WANT_FD | want_error, fsname, &fd, NULL, -1); } if (rc < 0) {
It looks like this error is present in Lustre 2.9 as well. Master exposes changelogs using the MDT name itself, not just the index, and may not have this issue.
Attachments
Activity
Labels | Original: LTS llnl | New: llnl |
Fix Version/s | New: Lustre 2.10.1 [ 13090 ] |
Labels | Original: llnl | New: LTS llnl |
Fix Version/s | New: Lustre 2.11.0 [ 13091 ] | |
Resolution | New: Fixed [ 1 ] | |
Status | Original: Open [ 1 ] | New: Resolved [ 5 ] |
Assignee | Original: WC Triage [ wc-triage ] | New: Emoly Liu [ emoly.liu ] |
Summary | Original: lfs changelog fails for MDT index >= 0x000A | New: lfs changelog fails for MDT index containing numerals [A-F] |