From 7237830e5583a866dab29a78ea63b2425b06d296 Mon Sep 17 00:00:00 2001 From: yury Date: Wed, 3 Sep 2008 10:22:30 +0000 Subject: [PATCH] b=16898 r=shadow,wangdi - stop recov thread before llog_cleanup() to release busy ctxt. --- lustre/obdfilter/filter.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/lustre/obdfilter/filter.c b/lustre/obdfilter/filter.c index 3dea57c..765b748 100644 --- a/lustre/obdfilter/filter.c +++ b/lustre/obdfilter/filter.c @@ -2010,19 +2010,22 @@ static int filter_llog_finish(struct obd_device *obd, int count) ctxt->loc_imp = NULL; } mutex_up(&ctxt->loc_sem); - rc = llog_cleanup(ctxt); } - ctxt = llog_get_context(obd, LLOG_SIZE_ORIG_CTXT); - if (ctxt) - rc2 = llog_cleanup(ctxt); - if (!rc) - rc = rc2; if (filter->fo_lcm) { llog_recov_thread_fini(filter->fo_lcm, obd->obd_force); filter->fo_lcm = NULL; } + if (ctxt) + rc = llog_cleanup(ctxt); + + ctxt = llog_get_context(obd, LLOG_SIZE_ORIG_CTXT); + if (ctxt) + rc2 = llog_cleanup(ctxt); + if (!rc) + rc = rc2; + RETURN(rc); } -- 1.8.3.1