Date: Sat, 21 Apr 2007 22:30:34 -0500 From: Eric Anderson <anderson@freebsd.org> To: Ivan Voras <ivoras@fer.hr> Cc: freebsd-geom@freebsd.org Subject: Re: gjournal & async Message-ID: <462AD6DA.1070203@freebsd.org> In-Reply-To: <f0eb3i$97s$2@sea.gmane.org> References: <f0eb3i$97s$2@sea.gmane.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 04/21/07 19:43, Ivan Voras wrote: > How does gjournal guarantee corectness if UFS is mounted async? AFAIK > the "async" handling of IO requests is done by the UFS, the writes are > not rescheduled at the GEOM layer? > I'm slightly guessing here that it can guarantee consistency because async writes may not have made it to the disk (the journal), and when gjournal replays the journal, it syncs the file system (flushing all the writes to disk first), then writes the journaled data to the consistent file system image. So, a write that is claimed as 'completed' to the process by the kernel, may still be in memory, and only partially written to the journal, or not at all. Either way, if an unclean unmount of the filesystem occurs, it's either lost completely, a partial journal write (so should be tossed anyway), or a complete journal entry synced down just before journal switch. Eric
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?462AD6DA.1070203>