X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Futils%2Fmount_lustre.c;h=7b363a574390754952d297e4fc09396897decfe3;hp=1c9c79b3a0a883aec888f72c79dee77953609fa4;hb=f38f09e02a05c82718344ad86f80a4a0f399af9d;hpb=2a34dc95bd100c181573e231047ff8976e296a36;ds=sidebyside diff --git a/lustre/utils/mount_lustre.c b/lustre/utils/mount_lustre.c index 1c9c79b..7b363a5 100644 --- a/lustre/utils/mount_lustre.c +++ b/lustre/utils/mount_lustre.c @@ -560,7 +560,8 @@ static int parse_ldd(char *source, struct mount_opts *mop, clear_update_ondisk(source, ldd); /* Since we never rewrite ldd, ignore temp flags */ - ldd->ldd_flags &= ~(LDD_F_VIRGIN | LDD_F_WRITECONF); + ldd->ldd_flags &= ~(LDD_F_VIRGIN | LDD_F_WRITECONF | + LDD_F_NO_LOCAL_LOGS); /* This is to make sure default options go first */ temp_options = strdup(options); @@ -588,6 +589,9 @@ static int parse_ldd(char *source, struct mount_opts *mop, } else if (ldd->ldd_svname[rc - 8] == '=') { ldd->ldd_svname[rc - 8] = '-'; ldd->ldd_flags |= LDD_F_WRITECONF; + } else if (ldd->ldd_svname[rc - 8] == '+') { + ldd->ldd_svname[rc - 8] = '-'; + ldd->ldd_flags |= LDD_F_NO_LOCAL_LOGS; } } /* backend osd type */ @@ -634,6 +638,11 @@ static int parse_ldd(char *source, struct mount_opts *mop, if (rc != 0) return rc; } + if (ldd->ldd_flags & LDD_F_NO_LOCAL_LOGS) { + rc = append_option(options, options_len, "nolocallogs", NULL); + if (rc != 0) + return rc; + } if (ldd->ldd_flags & LDD_F_NO_PRIMNODE) { rc = append_option(options, options_len, "noprimnode", NULL); if (rc != 0) @@ -804,7 +813,8 @@ static void label_lustre(struct mount_opts *mop) if (mop->mo_nosvc) return; - if (mop->mo_ldd.ldd_flags & (LDD_F_VIRGIN | LDD_F_WRITECONF)) { + if (mop->mo_ldd.ldd_flags & (LDD_F_VIRGIN | LDD_F_WRITECONF | + LDD_F_NO_LOCAL_LOGS)) { (void)osd_label_lustre(mop); } else { struct lustre_disk_data ldd;