Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 16 Apr 2013 06:50:13 -0500
From:      Kevin Day <toasty@dragondata.com>
To:        Bruce Evans <brde@optusnet.com.au>
Cc:        "freebsd-fs@FreeBSD.org Filesystems" <freebsd-fs@FreeBSD.org>
Subject:   Re: Does sync(8) really flush everything? Lost writes with journaled SU after sync+power cycle
Message-ID:  <E227CDC9-4DCE-4050-BAEC-6350D8E1B6F0@dragondata.com>
In-Reply-To: <20130411160253.V1041@besplex.bde.org>
References:  <87CC14D8-7DC6-481A-8F85-46629F6D2249@dragondata.com> <20130411160253.V1041@besplex.bde.org>

next in thread | previous in thread | raw e-mail | index | archive | help

On Apr 11, 2013, at 1:30 AM, Bruce Evans <brde@optusnet.com.au> wrote:
> sync(2) only schedules all writing of all modified buffers to disk.  =
Its
> man page even says this.  It doesn't wait for any of the writes to =
complete.

A very kind person has pointed out to me (off-list) that doing:

mount -u -o ro /

(without -f)

causes mount to force a flush, waits for completion, THEN bails out =
because there are open files preventing the read-only downgrade. We've =
been testing this here and it seems to be a usable workaround.

I'm also pointing out for at least our purposes, this problem (sync(2) =
doesn't seem to actually cause any writes) only seems to be causing lost =
directories if I'm using journaling. I'm attempting to narrow down why =
journaling appears to make sync into a no-op.=20

-- Kevin




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E227CDC9-4DCE-4050-BAEC-6350D8E1B6F0>