From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: with ECARTIS (v1.0.0; list xfs); Mon, 31 Jul 2006 19:08:38 -0700 (PDT) Received: from ogre.sisk.pl (ogre.sisk.pl [217.79.144.158]) by oss.sgi.com (8.12.10/8.12.10/SuSE Linux 0.7) with ESMTP id k7128IDW002263 for ; Mon, 31 Jul 2006 19:08:19 -0700 From: "Rafael J. Wysocki" Subject: Re: XFS vs. swsusp Date: Tue, 1 Aug 2006 01:23:37 +0200 References: <20060731215933.GB3612@elf.ucw.cz> <20060801084143.D2286470@wobbly.melbourne.sgi.com> <20060731225308.GA4000@elf.ucw.cz> In-Reply-To: <20060731225308.GA4000@elf.ucw.cz> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200608010123.37466.rjw@sisk.pl> Sender: xfs-bounce@oss.sgi.com Errors-To: xfs-bounce@oss.sgi.com List-Id: xfs To: Pavel Machek Cc: Nathan Scott , kernel list , xfs@oss.sgi.com Hi, On Tuesday 01 August 2006 00:53, Pavel Machek wrote: > > > Rafael has patches to add bdev freezing to swsusp. I'd like to know if > > > they are neccessary (and why). > > > > > > 1) Is sync() enough to guarantee that all the data written before sync > > > actually reach the platters? > > > > > > (Or is it that data only reach the journal? OTOH that would be okay, too). > > > > It ensures file data reaches its final resting place, and that > > metadata changes have been logged. It does not necessarily > .... > > Okay, good, being safely in the journal is okay. > > > > 2) If we stop all the user proceses and all the kernel threads, is > > > that enough to prevent XFS from writing to disk? > > > > Yes, I believe so (if all user processes and kernel threads are > > stopped, who else would be left to initiate I/O?). There is a > > Well, we were afraid that you'd do it from timer interrupt or > something like that. > > > timer driven wakeup done on the per-fs xfssyncd kernel threads, > > which do background metadata writeout and will write to the log > > periodically... but if those processes are all stopped too, you > > should be OK. > > Timer only wakes up xfssyncd thread, right? That's okay, as that > thread will be stopped. But we call sync() before kernel threads are frozen. What happens if xfssyncd gets woken up by the timer after the sync() and before we freeze it? Rafael