From: Mike Snitzer <snitzer@redhat.com>
To: Nikanth Karthikesan <knikanth@suse.de>
Cc: Theodore Tso <tytso@mit.edu>,
Damian Lukowski <damian@tvk.rwth-aachen.de>,
"linux-ide@vger.kernel.org" <linux-ide@vger.kernel.org>,
Jeff Garzik <jeff@garzik.org>, Matthew Wilcox <matthew@wil.cx>,
"Martin K. Petersen" <martin.petersen@oracle.com>,
James Bottomley <James.Bottomley@suse.de>,
Tejun Heo <tj@kernel.org>, lkml <linux-kernel@vger.kernel.org>,
Daniel Taylor <Daniel.Taylor@wdc.com>,
Mark Lord <kernel@teksavvy.com>, "H. Peter Anvin" <hpa@zytor.com>,
hirofumi@mail.parknet.co.jp,
Andrew Morton <akpm@linux-foundation.org>,
Alan Cox <alan@lxorguk.ukuu.org.uk>,
irtiger@gmail.com, aschnell@suse.de, jdelvare@suse.de
Subject: Re: ATA 4 KiB sector issues.
Date: Thu, 11 Mar 2010 11:01:41 -0500 [thread overview]
Message-ID: <170fa0d21003110801p3ce6c5e9xe77b6f9f833fe19d@mail.gmail.com> (raw)
In-Reply-To: <201003112030.44605.knikanth@suse.de>
On Thu, Mar 11, 2010 at 10:00 AM, Nikanth Karthikesan <knikanth@suse.de> wrote:
> On Thursday 11 March 2010 19:58:11 Theodore Tso wrote:
>> On Mar 11, 2010, at 8:57 AM, Nikanth Karthikesan wrote:
>> > I guess, what he meant was, to keep filesystem blocks aligned, even if
>> > the partition is not. Say if the partition is mis-aligned by 512-bytes,
>> > let the filesystem waste 4k-512bytes and keep it's blocks aligned. But it
>> > might be a case of over-engineering, possibly requiring disk format
>> > change.
>>
>> Ah, yes, I agree with you; that's probably what he meant.
>>
>> Sure, that's theoretically possible, but it would mean changing every
>> single filesystem, and it would require a file system format change --- or
>> at least a file system format extension.
>>
>> It would seem to be way easier to simply fix the partitioning tools to do
>> the right thing, though.
>>
>
> Yes. May be, just a simple but transparent device-mapper like mapping on top
> of the mis-aligned partition, to do the alignment. Then the file-system code
> need not change much.
>
> But Linux already has device-mapper and Linux will not be affected with mis-
> aligned partitions, when we use LVM.
Well, device-mapper and LVM needed to be updated to make them "just
work" but yes that work has been done.
> But the actual problem here is that partitioning tools might create partitions
> that wont allow other operating-systems to boot. So it might be enough, if the
> partitioning tools just create partitions with (mis-)alignment requirement for
> Windows.
I'm not following...
Anyway, 4K drives that are 512b logical and 4K physical may or may not
also have "DOS partition compensation" that use LBA -1 as the first
naturally (4K) aligned start. This means that the partition tools
need to shift the start of the first primary partition to be offset by
3584 bytes (7 512b sectors) for use with Linux. But for windows,
AFAIK windows XP and windows 7 create all partitions aligned on 1MB
boundaries. Linux's parted and fdisk create 1MB aligned partitions
now too.
So the only outlier is older versions of windows (< XP) and Linux (old
fdisk and parted, etc also use DOS partitioning) that don't use
naturally aligned (e.g. 1MB) partition boundaries. In those versions
of Windows and LInux there are ways to change the default start of
sector 63. That said, there is an opportunity to improve
documentation for how to workaround DOS partitioning on these
operating systems.
One other piece worth mentioning on this "IO Toplogy" support in the
entire Linux I/O Stack is the virt layers. hch has already extended
the virt-io protocol and qemu is in the finishing stages of being
updated to properly consume the "IO Topology" information. So we
really don't have any gaps in the Linux I/O stack.
mkp in particular, Jens, James, myself, and others implemented and
refined the SCSI and block changes. kzak, jim meyering, hans de
goede, hch, eric sandeen, bob peterson, myself and others updated all
other I/O stack layers ranging from DM to LVM, libblkid, fdisk, parted
to anaconda to mkfs.ext[234], mkfs.xfs, mkfs.gfs2 to virt-io and qemu.
FYI, all of these advances will be in Fedora 13 (quite a few are
already in Fedora 12).
There are obviously other Linux systems and userland tools (likely
Xen, other mkfs.* and more) that should be updated. Hopefully
maintainers and/or contributors of these projects will follow-up to
address those that need updating.
Again please see:
http://oss.oracle.com/~mkp/docs/linux-advanced-storage.pdf
http://people.redhat.com/msnitzer/docs/io-limits.txt
Some omissions include: Linux MD, which has been updated as mkp
pointed out, and I neglected to talk about virt-io and qemu (but like
I said they have been updated too).
Hopefully we're all closer to being on the same page now.
Mike
next prev parent reply other threads:[~2010-03-11 16:01 UTC|newest]
Thread overview: 129+ messages / expand[flat|nested] mbox.gz Atom feed top
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-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: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:38 ` 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
2010-03-08 20:02 ` Cláudio Martins
2010-03-08 21:07 ` 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: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 [this message]
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 18:29 ` H. Peter Anvin
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 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-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:09 ` Martin K. Petersen
2010-03-09 3:38 ` Daniel Taylor
2010-03-09 4:54 ` Martin K. Petersen
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 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-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 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-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
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=170fa0d21003110801p3ce6c5e9xe77b6f9f833fe19d@mail.gmail.com \
--to=snitzer@redhat.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=damian@tvk.rwth-aachen.de \
--cc=hirofumi@mail.parknet.co.jp \
--cc=hpa@zytor.com \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®