Whamcloud - gitweb
git://git.whamcloud.com
/
fs
/
lustre-release.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
LU-12546 mdt: abort recovery between MDTs
[fs/lustre-release.git]
/
lustre
/
ldlm
/
ldlm_lib.c
diff --git
a/lustre/ldlm/ldlm_lib.c
b/lustre/ldlm/ldlm_lib.c
index
e2605a5
..
927a424
100644
(file)
--- a/
lustre/ldlm/ldlm_lib.c
+++ b/
lustre/ldlm/ldlm_lib.c
@@
-2073,7
+2073,7
@@
static int check_for_next_transno(struct lu_target *lut)
req_transno = lustre_msg_get_transno(req->rq_reqmsg);
}
req_transno = lustre_msg_get_transno(req->rq_reqmsg);
}
- if (
tdtd != NULL
)
+ if (
!obd->obd_abort_recov_mdt && tdtd
)
update_transno = distribute_txn_get_next_transno(tdtd);
connected = atomic_read(&obd->obd_connected_clients);
update_transno = distribute_txn_get_next_transno(tdtd);
connected = atomic_read(&obd->obd_connected_clients);
@@
-2093,7
+2093,7
@@
static int check_for_next_transno(struct lu_target *lut)
} else if (obd->obd_recovery_expired) {
CDEBUG(D_HA, "waking for expired recovery\n");
wake_up = 1;
} else if (obd->obd_recovery_expired) {
CDEBUG(D_HA, "waking for expired recovery\n");
wake_up = 1;
- } else if (
tdtd != NULL && req != NULL
&&
+ } else if (
!obd->obd_abort_recov_mdt && tdtd && req
&&
is_req_replayed_by_update(req)) {
LASSERTF(req_transno < next_transno,
"req_transno %llu next_transno%llu\n", req_transno,
is_req_replayed_by_update(req)) {
LASSERTF(req_transno < next_transno,
"req_transno %llu next_transno%llu\n", req_transno,
@@
-2205,7
+2205,7
@@
repeat:
* left in the queue
*/
spin_lock(&obd->obd_recovery_task_lock);
* left in the queue
*/
spin_lock(&obd->obd_recovery_task_lock);
- if (
lut->lut_tdtd != NULL
) {
+ if (
!obd->obd_abort_recov_mdt && lut->lut_tdtd
) {
next_update_transno =
distribute_txn_get_next_transno(lut->lut_tdtd);
next_update_transno =
distribute_txn_get_next_transno(lut->lut_tdtd);
@@
-2432,7
+2432,7
@@
static int check_for_recovery_ready(struct lu_target *lut)
return 0;
}
return 0;
}
- if (lut->lut_tdtd != NULL) {
+ if (
!obd->obd_abort_recov_mdt &&
lut->lut_tdtd != NULL) {
if (!lut->lut_tdtd->tdtd_replay_ready &&
!obd->obd_abort_recovery && !obd->obd_stopping) {
/*
if (!lut->lut_tdtd->tdtd_replay_ready &&
!obd->obd_abort_recovery && !obd->obd_stopping) {
/*
@@
-2484,7
+2484,7
@@
static __u64 get_next_transno(struct lu_target *lut, int *type)
if (type != NULL)
*type = REQUEST_RECOVERY;
if (type != NULL)
*type = REQUEST_RECOVERY;
- if (
tdtd == NULL
)
+ if (
!tdtd || obd->obd_abort_recov_mdt
)
RETURN(transno);
update_transno = distribute_txn_get_next_transno(tdtd);
RETURN(transno);
update_transno = distribute_txn_get_next_transno(tdtd);