[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <49502C4B.7040308@redhat.com>
Date: Mon, 22 Dec 2008 19:09:47 -0500
From: Ric Wheeler <rwheeler@...hat.com>
To: Andreas Dilger <adilger@....com>
CC: Eric Sandeen <sandeen@...hat.com>, Jan Kara <jack@...e.cz>,
Arthur Jones <ajones@...erbed.com>,
Andrew Morton <akpm@...ux-foundation.org>,
"linux-ext4@...r.kernel.org" <linux-ext4@...r.kernel.org>,
"sct@...hat.com" <sct@...hat.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] ext3: wait on all pending commits in ext3_sync_fs
Andreas Dilger wrote:
> On Dec 22, 2008 14:15 -0500, Ric Wheeler wrote:
>
>> Without having dived into the patch in detail, one worry I would have is
>> that we still might care to spin up a drive for empty transactions in
>> order to invalidate the drive's write cache.
>>
>> For example, if we have the following sequence:
>>
>> (1) user app performs series of writes to file A
>> (2) pages dirtied from writes to A are destaged to the disk over time
>> (3) user app issues fsync(file A) to make sure that the data will
>> survive a power outage
>>
>> At this point in time, would this change prevent us from spinning up the
>> drive and invalidating the disk write cache for that fsync() ?
>>
>
> Well, if the writes themselves didn't spin up the drive, it is uncertain
> whether the write of the journal commit block would be any more helpful
> in getting that to happen.
>
> Cheers, Andreas
> --
> Andreas Dilger
> Sr. Staff Engineer, Lustre Group
> Sun Microsystems of Canada, Inc.
>
>
To make the example cleared, add a step:
(2.5) between the writes and the fsync(), the drive spins down
In this case, if the app issues an fsync(), will we still have volatile
data in its write cache that has not been flushed?
Ric
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists