From a3721f8d1bda2098ab211f42a740d0afed4f19d4 Mon Sep 17 00:00:00 2001 From: pjd Date: Fri, 27 Aug 2010 14:08:10 +0000 Subject: [PATCH] Log that synchronization was interrupted in a proper place. MFC after: 2 weeks Obtained from: Wheel Systems Sp. z o.o. http://www.wheelsystems.com --- sbin/hastd/primary.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/sbin/hastd/primary.c b/sbin/hastd/primary.c index 1b08585822f3..429e914aa4ae 100644 --- a/sbin/hastd/primary.c +++ b/sbin/hastd/primary.c @@ -1495,10 +1495,17 @@ sync_thread(void *arg __unused) ncomps = HAST_NCOMPONENTS; dorewind = true; - synced = 0; + synced = -1; for (;;) { mtx_lock(&sync_lock); + if (synced == -1) + synced = 0; + else if (!sync_inprogress) { + pjdlog_info("Synchronization interrupted. " + "%jd bytes synchronized so far.", + (intmax_t)synced); + } while (!sync_inprogress) { dorewind = true; synced = 0; @@ -1559,10 +1566,6 @@ sync_thread(void *arg __unused) (uintmax_t)res->hr_secondary_localcnt); (void)metadata_write(res); mtx_unlock(&metadata_lock); - } else if (synced > 0) { - pjdlog_info("Synchronization interrupted. " - "%jd bytes synchronized so far.", - (intmax_t)synced); } rw_unlock(&hio_remote_lock[ncomp]); continue;