summaryrefslogtreecommitdiffstats
path: root/sbin/hastd/primary.c
diff options
context:
space:
mode:
authorpjd <pjd@FreeBSD.org>2010-08-27 14:08:10 +0000
committerpjd <pjd@FreeBSD.org>2010-08-27 14:08:10 +0000
commita3721f8d1bda2098ab211f42a740d0afed4f19d4 (patch)
treeb817b9fde62d5ebbba87f8a355256775dae965af /sbin/hastd/primary.c
parentb51d684000e6dd62197115ac6a50e4fb37f3925e (diff)
downloadFreeBSD-src-a3721f8d1bda2098ab211f42a740d0afed4f19d4.zip
FreeBSD-src-a3721f8d1bda2098ab211f42a740d0afed4f19d4.tar.gz
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
Diffstat (limited to 'sbin/hastd/primary.c')
-rw-r--r--sbin/hastd/primary.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/sbin/hastd/primary.c b/sbin/hastd/primary.c
index 1b08585..429e914 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;
OpenPOWER on IntegriCloud