xfs
[Top] [All Lists]

Re: [PATCH] Freeze bdevs when freezing processes.

To: "Rafael J. Wysocki" <rjw@xxxxxxx>
Subject: Re: [PATCH] Freeze bdevs when freezing processes.
From: Nigel Cunningham <ncunningham@xxxxxxxxxxxxx>
Date: Wed, 25 Oct 2006 23:23:40 +1000
Cc: Pavel Machek <pavel@xxxxxx>, David Chinner <dgc@xxxxxxx>, Andrew Morton <akpm@xxxxxxxx>, LKML <linux-kernel@xxxxxxxxxxxxxxx>, xfs@xxxxxxxxxxx
In-reply-to: <200610251432.41958.rjw@xxxxxxx>
References: <1161576735.3466.7.camel@xxxxxxxxxxxxxxxxxx> <20061025083830.GI11034@xxxxxxxxxxxxxxxxx> <20061025084714.GA7266@xxxxxxxxxx> <200610251432.41958.rjw@xxxxxxx>
Sender: xfs-bounce@xxxxxxxxxxx
Hi.

On Wed, 2006-10-25 at 14:32 +0200, Rafael J. Wysocki wrote:
> On Wednesday, 25 October 2006 10:47, Pavel Machek wrote:
> > On Wed 2006-10-25 18:38:30, David Chinner wrote:
> > > On Wed, Oct 25, 2006 at 10:10:01AM +0200, Pavel Machek wrote:
> > > > > Hence the only way to correctly rebuild the XFS state on resume is
> > > > > to quiesce the filesystem on suspend and thaw it on resume so as to
> > > > > trigger log recovery.
> > > > 
> > > > No, during suspend/resume, memory image is saved, and no state is
> > > > lost. We would not even have to do sys_sync(), and suspend/resume
> > > > would still work properly.
> > > 
> > > It seems to me that you ensure the filesystem is synced to disk and
> > > then at some point later you record the memory state of the
> > > filesystem, but these happen at different times. That leaves a
> > > window for things to get out of sync again, right?
> > 
> > I DO NOT HAVE TO ENSURE FILESYSTEM IS SYNCED. That sys_sync() is
> > optional.
> > 
> > Recording of memory state is atomic, and as long as noone writes to
> > the disk after atomic snapshot, memory image matches what is on disk.
> 
> Well, my impression is that this is exactly what happens here: Something
> in the XFS code causes metadata to be written to disk _after_ the atomic
> snapshot.
> 
> That's why I asked if the dirty XFS metadata were flushed by a kernel thread.

When I first added bdev freezing it was because there was an XFS timer
doing writes.

Regards,

Nigel


<Prev in Thread] Current Thread [Next in Thread>