From: Johann Lombardi Date: Wed, 30 Jun 2010 23:00:27 +0000 (+0200) Subject: b=23192 ping_evictor_main() should skip export eviction only we are still in recovery X-Git-Tag: v1_8_3_57~1 X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=edc1e28ce344ee03a4262b3f82f6ac8ce900b803;p=fs%2Flustre-release.git b=23192 ping_evictor_main() should skip export eviction only we are still in recovery i=panda i=tappro target_recovery_check_and_stop() now returns 1 when the ost is not in recovery. This confuses the ping evictor which decides not to process export that needs to be evicted. --- diff --git a/lustre/ptlrpc/pinger.c b/lustre/ptlrpc/pinger.c index fc286a8..4cb8b9b 100644 --- a/lustre/ptlrpc/pinger.c +++ b/lustre/ptlrpc/pinger.c @@ -626,10 +626,12 @@ static int ping_evictor_main(void *arg) obd_evict_list); spin_unlock(&pet_lock); - /* bug 18948: ensure recovery is aborted in a timely fashion */ - if (target_recovery_check_and_stop(obd) || - obd->obd_recovering /* no evictor during recovery */) - GOTO(skip, 0); + if (obd->obd_recovering) { + /* bug 18948: ensure recovery is aborted in a timely fashion */ + target_recovery_check_and_stop(obd); + /* no evictor during recovery */ + GOTO(skip, 0); + } expire_time = cfs_time_current_sec() - PING_EVICT_TIMEOUT;