From: "dnu478nt5w@mailexpire.com"@horizon.com
To: linux-kernel@vger.kernel.org
Subject: Re: Journaling pointless with today's hard disks?
Date: 25 Nov 2001 01:20:22 -0000 [thread overview]
Message-ID: <20011125012022.6326.qmail@science.horizon.com> (raw)
Stephen Satchell wrote:
> Most power supplies are not designed to hold up for more than 30-60 ms at
> full load upon removal of mains power. Power-fail detect typically
> requires 12 ms (three-quarters cycle average at 60 Hz) or 15 ms
> (three-quarters cycle average at 50 Hz) to detect that mains power has
> failed, leaving your system a very short time to abort that long queue of
> disk write commands. It's very possible that by the time the system wakes
> up to the fact that its electron feeding tube is empty it has already
> started a write operation that cannot be completed before power goes out of
> specification. It's a race condition.
>
> If power goes out of specification before the drive completes a commanded
> write, what do you expect the poor drive to do?
I expect it to have enough capacitor power and rotational inertia that
it can decide before it *starts* a given sector write whether it will
be able, barring a disaster rather less likely than instantaneous loss
of DC power, to complete it.
It doesn't need that long. Take, as an example, a Really Old drive...
an original 20 MB MFM drive. 3600 RPM, 17 sectors/track.
That's 60*17 = 1020 sectors per second passing under the head. So the
actual duration of a sector write is 1 ms.
In a more modern hard drive (IBM 40GV) will spin faster and have
from 370 (inner tracks) to 792 (outer tracks) sectors per track.
(http://www.storagereview.com/guide2000/ref/hdd/geom/tracksZBR.html)
Even at 5400 rpm, on the innermost track, that's 90*370 = 33300
sectors/second passing under the head, or 30 *microseconds* per sector.
I think it's reasonable to expect a drive to keep functioning for 30
microseconds between when it notices the power is dropping and when it
really can't continue. Heck, even 1 ms isn't unreasonable.
We exepct a drive to look at the power supply shortly before the write,
and decide if it's "go for launch" or not.
Given that modern drives already save enough power to unload the heads
before the platter slows to the point that they'd touch down, this doesn't
seem like a big problem. (Of course, unloading the heads doesn't require
that drive RPM, head position, or anything else be within spec.)
What we'd *like* is for the drive to have enough power to be able to
seek to a reserved location and dump out the entire write-behind cache
before dying, but that possibly requires a full-bore seek (longer than
the typical 9 ms "average" seek) plus head settle time (it's okay to
start *reading* before you're sure the head is in place; the CRC will
tell you if you didn't make it), plus writing 4000 sectors (5+ rotations,
with head switching and extra settle time between, for a 2 MB buffer),
but that's adding up to a good fraction of 100 ms, which *is* a bit long
for power-loss operation.
next reply other threads:[~2001-11-25 1:20 UTC|newest]
Thread overview: 85+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-11-25 1:20 dnu478nt5w@mailexpire.com [this message]
-- strict thread matches above, loose matches on Subject: below --
2001-11-28 23:25 Journaling pointless with today's hard disks? Frank de Lange
2001-11-29 1:52 ` Matthias Andree
2001-11-28 17:22 David Balazic
2001-11-28 14:36 Galappatti, Kishantha
2001-11-24 13:03 Florian Weimer
2001-11-24 13:40 ` Rik van Riel
2001-11-24 16:36 ` Phil Howard
2001-11-24 17:19 ` Charles Marslett
2001-11-24 17:31 ` Florian Weimer
2001-11-24 17:41 ` Matthias Andree
2001-11-24 19:20 ` Florian Weimer
2001-11-24 19:29 ` Rik van Riel
2001-11-24 22:51 ` John Alvord
2001-11-24 23:41 ` Phil Howard
2001-11-25 0:24 ` Ian Stirling
2001-11-25 0:53 ` Phil Howard
2001-11-25 1:25 ` H. Peter Anvin
2001-11-25 1:44 ` Sven.Riedel
2001-11-24 22:28 ` H. Peter Anvin
2001-11-25 4:49 ` Andre Hedrick
2001-11-24 23:04 ` Pedro M. Rodrigues
2001-11-24 23:23 ` Stephen Satchell
2001-11-24 23:29 ` H. Peter Anvin
2001-11-26 18:05 ` Steve Brueggeman
2001-11-26 23:49 ` Martin Eriksson
2001-11-27 0:06 ` Andreas Dilger
2001-11-27 0:16 ` Andre Hedrick
2001-11-27 7:38 ` Andreas Dilger
2001-11-27 11:48 ` Ville Herva
2001-11-27 0:18 ` Jonathan Lundell
2001-11-27 1:01 ` Ian Stirling
2001-11-27 1:33 ` H. Peter Anvin
2001-11-27 1:57 ` Steve Underwood
2001-11-27 5:04 ` Stephen Satchell
[not found] ` <mailman.1006644421.6553.linux-kernel2news@redhat.com>
2001-11-25 4:20 ` Pete Zaitcev
2001-11-25 13:52 ` Pedro M. Rodrigues
2001-11-25 12:30 ` Matthias Andree
2001-11-25 15:04 ` Barry K. Nathan
2001-11-25 16:31 ` Matthias Andree
2001-11-27 2:39 ` Pavel Machek
2001-12-03 10:23 ` Matthias Andree
2001-11-25 9:14 ` Chris Wedgwood
2001-11-25 22:55 ` Daniel Phillips
2001-11-26 16:59 ` Rob Landley
2001-11-26 20:30 ` Andre Hedrick
2001-11-26 20:35 ` Rob Landley
2001-11-26 23:59 ` Andreas Dilger
2001-11-27 0:24 ` H. Peter Anvin
2001-11-27 0:52 ` H. Peter Anvin
2001-11-27 1:11 ` Andrew Morton
2001-11-27 1:15 ` H. Peter Anvin
2001-11-27 16:59 ` Matthias Andree
2001-11-27 16:56 ` Matthias Andree
2001-11-27 1:23 ` Ian Stirling
2001-11-26 23:00 ` Rob Landley
2001-11-27 2:41 ` H. Peter Anvin
2001-11-27 0:19 ` Rob Landley
2001-11-27 23:35 ` Andreas Bombe
2001-11-28 14:32 ` Rob Landley
2001-11-27 3:39 ` Ian Stirling
2001-11-27 7:03 ` Ville Herva
2001-11-27 16:50 ` Matthias Andree
2001-11-27 20:31 ` Rob Landley
2001-11-28 18:43 ` Matthias Andree
2001-11-28 18:46 ` Rob Landley
2001-11-28 22:19 ` Matthias Andree
2001-11-29 22:21 ` Pavel Machek
2001-12-01 10:55 ` Jeff V. Merkey
2001-12-02 0:08 ` Matthias Andree
2001-12-03 20:04 ` Pavel Machek
2001-11-26 20:53 ` Richard B. Johnson
2001-11-27 0:32 ` H. Peter Anvin
2001-11-27 16:39 ` Matthias Andree
2001-11-27 17:42 ` Martin Eriksson
2001-11-28 16:35 ` Ian Stirling
2001-11-26 17:14 ` Steve Brueggeman
2001-11-26 20:36 ` Andre Hedrick
2001-11-26 21:14 ` Steve Brueggeman
2001-11-26 21:36 ` Andre Hedrick
2001-11-27 16:36 ` Steve Brueggeman
2001-11-27 20:04 ` Bill Davidsen
2001-11-27 21:28 ` Wayne Whitney
2001-11-27 21:52 ` Andre Hedrick
2001-11-28 11:53 ` Pedro M. Rodrigues
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20011125012022.6326.qmail@science.horizon.com \
--to="dnu478nt5w@mailexpire.com"@horizon.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.