All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andreas Dilger <adilger@sun.com>
To: "Martin K. Petersen" <martin.petersen@oracle.com>
Cc: Eric Sandeen <sandeen@redhat.com>,
	ext4 development <linux-ext4@vger.kernel.org>
Subject: Re: [PATCH, RFC] mke2fs: get device topology values from blkid
Date: Fri, 18 Sep 2009 14:28:14 -0600	[thread overview]
Message-ID: <20090918202814.GC2537@webber.adilger.int> (raw)
In-Reply-To: <yq1ab0s6ny7.fsf@sermon.lab.mkp.net>

On Sep 18, 2009  15:40 -0400, Martin K. Petersen wrote:
> >>>>> "Eric" == Eric Sandeen <sandeen@redhat.com> writes:
> >> Also, are you guys affected by the
> >> previously-acked-sectors-are-now-gone problems with 512-byte
> >> logical/4KB physical drives?
> 
> Eric> previously-acked-sectors-are-now-gone?  I guess I haven't been
> Eric> keeping up.  What do you mean by this?
> 
> We already discussed this on irc.  But in case anybody else are
> wondering...
> 
> On a disk with 4KB physical blocks emulating 512-byte logical blocks the
> drive firmware must resort to read-modify-write cycles and that opens up
> a new error scenario:
> 
> 4KB physical block: |                       0                       |
> 512b logical block: |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |
>                                                                  ^ ERROR
> 
> In this case we have successfully written LBA 0 - 6.  However, when the
> drive attempts to write LBA 7 it gets an I/O error and the previous 7
> logical blocks (that have previously been acknowledged as written) are
> lost.  IOW, the drive write atomicity is at the physical block level and
> not the logical ditto.

In some sense, this is no worse than "real" sectors 0-6 going bad right
after they were written, or in fact even having the writes silently fail.

Yes, there is more chance that writing sector 7 (due to 4k sector r-m-w)
will cause collateral damage, but the truth even today is that disks
are not going to fail a single 512-byte sector at one time, but more
likely 64kB (or whatever the remapping unit size is), so this isn't
really introducing a new failure mode.

Cheers, Andreas
--
Andreas Dilger
Sr. Staff Engineer, Lustre Group
Sun Microsystems of Canada, Inc.


  reply	other threads:[~2009-09-18 20:28 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-17 22:22 [PATCH, RFC] mke2fs: get device topology values from blkid Eric Sandeen
2009-09-18  5:55 ` Andreas Dilger
2009-09-18 14:04   ` Eric Sandeen
2009-09-18 14:20     ` Andreas Dilger
2009-09-18 14:30       ` Eric Sandeen
2009-09-18 16:43       ` Theodore Tso
2009-09-18 16:57         ` Eric Sandeen
2009-09-18  6:13 ` Martin K. Petersen
2009-09-18 14:18   ` Andreas Dilger
2009-09-18 14:23   ` Eric Sandeen
2009-09-18 19:40     ` Martin K. Petersen
2009-09-18 20:28       ` Andreas Dilger [this message]
2009-09-20 20:46         ` Martin K. Petersen
2009-09-22 14:30           ` Ric Wheeler
2009-09-18 23:59 ` Karel Zak
2009-09-19  3:03   ` Eric Sandeen
2009-09-21 17:06 ` [PATCH V2] " Eric Sandeen
2009-10-02 16:32   ` [PATCH V3] " Eric Sandeen
2009-10-04 19:16     ` Theodore Tso

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=20090918202814.GC2537@webber.adilger.int \
    --to=adilger@sun.com \
    --cc=linux-ext4@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=sandeen@redhat.com \
    /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.