All of lore.kernel.org
 help / color / mirror / Atom feed
From: "H. Peter Anvin" <hpa@zytor.com>
To: James Bottomley <James.Bottomley@suse.de>
Cc: "Martin K. Petersen" <martin.petersen@oracle.com>,
	Tejun Heo <tj@kernel.org>,
	"linux-ide@vger.kernel.org" <linux-ide@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	Daniel Taylor <Daniel.Taylor@wdc.com>,
	Jeff Garzik <jeff@garzik.org>, Mark Lord <kernel@teksavvy.com>,
	tytso@mit.edu, hirofumi@mail.parknet.co.jp,
	Andrew Morton <akpm@linux-foundation.org>,
	Alan Cox <alan@lxorguk.ukuu.org.uk>,
	irtiger@gmail.com, Matthew Wilcox <matthew@wil.cx>,
	aschnell@suse.de, knikanth@suse.de, jdelvare@suse.de
Subject: Re: ATA 4 KiB sector issues.
Date: Mon, 08 Mar 2010 11:11:49 -0800	[thread overview]
Message-ID: <4B954BF5.2050506@zytor.com> (raw)
In-Reply-To: <1268074705.10660.23.camel@mulgrave.site>

On 03/08/2010 10:58 AM, James Bottomley wrote:
>>
>> On the flipside, though, there really is very little net benefit to 4K
>> as opposed to 512 byte logical sectors: the additional protocol overhead
>> is relatively minimal, and as long as writes are aligned full blocks,
>> there shouldn't be any additional overhead on either the OS or the drive
>> side.  On the plus side, you get full compatibility with the existing
>> software stack.  The equation really seems rather simple.
> 
> There's another problem that afflicts 4k drives emulating 512b: they
> have to do a read modify write for any isolated 512b write ... that
> leads to potential corruption of adjacent 512b blocks if power is lost
> at the moment the write is being done.  Since most Linux filesystems are
> 4k sectors, misalignment really hammers this, plus most journal writes
> seem to be done in 512 byte increments.  I suppose for USB this could be
> regarded as flakey as usual, though.
> 

Misalignment sucks in general.  This is nothing new - the RAID and flash
people have had these problems for a long time now.  It's clear we need
to align our filesystems, period.

As to the read-modify-write issue: to some degree there is very little
you can do about it other than a big enough capacitor.  If you can't
write a sector atomically and have it stick, you're screwed no matter what.

	-hpa

  reply	other threads:[~2010-03-08 19:12 UTC|newest]

Thread overview: 155+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-08  3:48 ATA 4 KiB sector issues Tejun Heo
2010-03-08  3:48 ` Tejun Heo
2010-03-08  5:38 ` Greg Freemyer
2010-03-08  7:00 ` James Bottomley
2010-03-08  7:53   ` H. Peter Anvin
2010-03-08 15:34     ` Martin K. Petersen
2010-03-08 15:34       ` Martin K. Petersen
2010-03-09 22:36       ` Daniel Taylor
2010-03-09 22:36         ` Daniel Taylor
2010-03-09 22:46     ` Greg Freemyer
2010-03-10  0:05       ` Tejun Heo
2010-03-10  0:14         ` Daniel Taylor
2010-03-10  0:14           ` Daniel Taylor
2010-03-10  0:26           ` Tejun Heo
2010-03-10  0:36             ` H. Peter Anvin
2010-03-10  5:17           ` H. Peter Anvin
2010-03-10  7:09           ` Gabor Gombas
2010-03-10  0:32       ` H. Peter Anvin
2010-03-10 10:46         ` Johannes Stezenbach
2010-03-10 11:22           ` H. Peter Anvin
2010-03-08  7:56   ` H. Peter Anvin
2010-03-08 15:33   ` Martin K. Petersen
2010-03-08 15:33     ` Martin K. Petersen
2010-03-08 15:38     ` Martin K. Petersen
2010-03-08 15:38       ` Martin K. Petersen
2010-03-08 15:41       ` Martin K. Petersen
2010-03-08 15:41         ` Martin K. Petersen
2010-03-08 18:50         ` H. Peter Anvin
2010-03-08 18:58           ` James Bottomley
2010-03-08 19:11             ` H. Peter Anvin [this message]
2010-03-08 20:02             ` Cláudio Martins
2010-03-08 21:07               ` Martin K. Petersen
2010-03-08 21:07                 ` Martin K. Petersen
2010-03-08 20:19           ` Martin K. Petersen
2010-03-08 20:19             ` Martin K. Petersen
2010-03-08 21:16             ` H. Peter Anvin
2010-03-10  0:34           ` Tejun Heo
2010-03-10  7:53         ` Matthew Wilcox
2010-03-10 13:47           ` Jeff Garzik
2010-03-10 16:19             ` Damian Lukowski
2010-03-11 13:04               ` Theodore Tso
2010-03-11 13:57                 ` Nikanth Karthikesan
2010-03-11 14:28                   ` Theodore Tso
2010-03-11 14:39                     ` James Bottomley
2010-03-11 15:05                       ` Nikanth Karthikesan
2010-03-11 15:25                         ` tytso
2010-03-11 16:26                           ` Gene Heskett
2010-03-11 16:26                             ` Gene Heskett
2010-03-11 16:34                           ` Greg Freemyer
2010-03-11 16:34                             ` Greg Freemyer
2010-03-12  1:09                             ` Tejun Heo
2010-03-11 14:48                     ` Mike Snitzer
2010-03-11 15:00                     ` Nikanth Karthikesan
2010-03-11 15:10                       ` Tejun Heo
2010-03-11 16:01                       ` Mike Snitzer
2010-03-11 18:26                         ` Christoph Hellwig
2010-03-11 16:33                   ` H. Peter Anvin
2010-03-08 15:18 ` Martin K. Petersen
2010-03-08 15:18   ` Martin K. Petersen
2010-03-08 18:29   ` H. Peter Anvin
2010-03-08 20:01     ` Martin K. Petersen
2010-03-08 20:01       ` Martin K. Petersen
2010-03-08 19:34   ` Mike Snitzer
2010-03-09  2:53     ` Tejun Heo
2010-03-09  3:20       ` Martin K. Petersen
2010-03-09  3:20         ` Martin K. Petersen
2010-03-09  6:53     ` Michael Tokarev
2010-03-09 10:01       ` Karel Zak
2010-03-09 10:16         ` Michael Tokarev
2010-03-09 11:15           ` Dave Chinner
2010-03-09 11:38             ` Michael Tokarev
2010-03-09 12:20               ` Dave Chinner
2010-03-09 11:50           ` Karel Zak
2010-03-09 12:18           ` Karel Zak
2010-03-10  5:06             ` Martin K. Petersen
2010-03-10 20:50               ` Henrique de Moraes Holschuh
2010-03-10  4:57       ` Martin K. Petersen
2010-03-10  4:57         ` Martin K. Petersen
2010-03-08 19:58   ` Karel Zak
2010-03-09  2:34     ` Tejun Heo
2010-03-09  2:42       ` Jeff Garzik
2010-03-09  2:49         ` Tejun Heo
2010-03-09  2:42       ` Tejun Heo
2010-03-09  3:11         ` Martin K. Petersen
2010-03-09  3:11           ` Martin K. Petersen
2010-03-09  3:09       ` Martin K. Petersen
2010-03-09  3:09         ` Martin K. Petersen
2010-03-09  3:38       ` Daniel Taylor
2010-03-09  3:38         ` Daniel Taylor
2010-03-09  4:54         ` Martin K. Petersen
2010-03-09  4:54           ` Martin K. Petersen
2010-03-09  3:41       ` Felix Miata
2010-03-09  7:27     ` Jim Meyering
2010-03-09  7:27       ` Jim Meyering
2010-03-09 23:56       ` Tejun Heo
2010-03-08 20:12   ` H. Peter Anvin
2010-03-09  2:22     ` Tejun Heo
2010-03-09  2:44   ` Tejun Heo
2010-03-09  3:18     ` Martin K. Petersen
2010-03-09  3:18       ` Martin K. Petersen
2010-03-09 14:32       ` Mark Lord
2010-03-09  6:34 ` Mikael Abrahamsson
2010-03-09 10:06   ` Michal Soltys
2010-03-10  0:11     ` Tejun Heo
2010-03-14 21:09       ` Michal Soltys
2010-03-14 22:56         ` s ponnusa
2010-03-09 13:55 ` Mark Lord
2010-03-10  0:00   ` Tejun Heo
2010-03-10  6:08     ` Mark Lord
2010-03-09 23:46 ` Arnd Bergmann
2010-03-10  0:20   ` Tejun Heo
2010-03-10  9:14   ` Denys Vlasenko
2010-03-10 11:02     ` Felix Miata
2010-03-15  1:21     ` H. Peter Anvin
2010-03-15  2:26       ` Denys Vlasenko
2010-03-15  2:56         ` Greg Freemyer
2010-03-15  4:00         ` H. Peter Anvin
2010-03-15 12:30           ` Arnd Bergmann
2010-03-15  5:20         ` david
2010-03-15  9:56           ` Denys Vlasenko
2010-03-15 14:47             ` H. Peter Anvin
2010-03-16  2:30     ` Tejun Heo
2010-03-16  2:32       ` Tejun Heo
2010-03-16  6:14       ` James Bottomley
2010-03-16  6:22         ` Tejun Heo
2010-03-16  6:37           ` Felix Miata
2010-03-16  6:42             ` Tejun Heo
2010-03-16 13:24           ` James Bottomley
2010-03-16 13:56             ` Tejun Heo
2010-03-16 14:21               ` James Bottomley
2010-03-16 14:25                 ` Arnd Bergmann
2010-03-16 14:50                 ` Tejun Heo
2010-03-16 15:02                   ` James Bottomley
2010-03-16 15:20                     ` Tejun Heo
2010-03-16 15:22                       ` Martin K. Petersen
2010-03-16 15:22                         ` Martin K. Petersen
2010-03-17  2:07                         ` Tejun Heo
2010-03-16 15:23                       ` James Bottomley
2010-03-16 15:37                         ` Tejun Heo
2010-03-16 20:42                           ` Ric Wheeler
2010-03-17  2:04                             ` Tejun Heo
2010-03-17  2:51                         ` Kevin Easton
2010-03-17  3:44                           ` Tejun Heo
2010-03-17  8:01                             ` jdow
2010-03-17 17:04                       ` Bill Davidsen
2010-03-16 14:38               ` Denys Vlasenko
2010-03-16 15:12                 ` Tejun Heo
2010-03-16 15:25                   ` Denys Vlasenko
2010-03-16 15:47                     ` Tejun Heo
2010-03-17  6:48             ` H. Peter Anvin
2010-03-16  6:27         ` Thomas Chou
  -- strict thread matches above, loose matches on Subject: below --
2010-03-12  3:10 H. Peter Anvin
2010-03-16 22:21 H. Peter Anvin
2010-03-17 15:08 ` Ric Wheeler
2010-03-17 17:13   ` H. Peter Anvin

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=4B954BF5.2050506@zytor.com \
    --to=hpa@zytor.com \
    --cc=Daniel.Taylor@wdc.com \
    --cc=James.Bottomley@suse.de \
    --cc=akpm@linux-foundation.org \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=aschnell@suse.de \
    --cc=hirofumi@mail.parknet.co.jp \
    --cc=irtiger@gmail.com \
    --cc=jdelvare@suse.de \
    --cc=jeff@garzik.org \
    --cc=kernel@teksavvy.com \
    --cc=knikanth@suse.de \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=matthew@wil.cx \
    --cc=tj@kernel.org \
    --cc=tytso@mit.edu \
    /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.