lod should not try to initialize llogs if they have been initialized
already. this may happen if, for example, deactivation of specific
MDT has been lost and we activate already active MDT.
the result would be an assertion in lod_sub_prep_llog():
LustreError: 8141:0:(lod_sub_object.c:991:lod_sub_prep_llog())
ASSERTION( !ctxt->loc_handle ) failed:
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I17ed1a19ac143d1dd80e5c711c08311c49eda89e
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57071
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Mikhail Pershin <mpershin@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
*ptr = '.';
tmp = strstr(param, "=");
tmp++;
- if (*tmp == '1') {
+ if (*tmp == '1' && sub_tgt->ltd_active == 0) {
struct llog_ctxt *ctxt;
obd = sub_tgt->ltd_tgt->dd_lu_dev.ld_obd;
sub_tgt->ltd_tgt,
sub_tgt->ltd_index);
sub_tgt->ltd_active = !rc;
- } else {
+ } else if (*tmp == '0' && sub_tgt->ltd_active != 0) {
lod_sub_fini_llog(env, sub_tgt->ltd_tgt,
NULL);
sub_tgt->ltd_active = 0;