From: Jeff Garzik <jeff@garzik.org>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: IDE/ATA development list <linux-ide@vger.kernel.org>
Subject: Re: Combined mode quirk removal kills performance
Date: Sat, 16 Jun 2007 11:36:53 -0400 [thread overview]
Message-ID: <46740395.6080702@garzik.org> (raw)
In-Reply-To: <20070616075347.96b2405d.akpm@linux-foundation.org>
Andrew Morton wrote:
> So I revisited [...]
> http://bugzilla.kernel.org/show_bug.cgi?id=8636
>
> I don't see why it's not-a-bug. The second guy (Stephen Clark) had to toss
> out the FC6 kernel and build his own kernel to fix this regression.
(I hope you don't mind me copying linux-ide)
The combined mode removal changed the driver load configuration. Some
distros updated with that knowledge, but apparently Fedora did not.
Combined mode would explicitly reserve ports for libata in pci/quirks.c,
a horrible layering violation that created special case module load
order dependencies.
The change made libata and the old-IDE driver behave like normal Linux
drivers. They can both grab an entire PCI device and drive it
correctly, so -- just like every other situation where two drivers can
match the same PCI ID -- the one that loads first wins.
Kernel configs need to be tweaked a bit, due to this change. That's why
it was communicated in advance (but poorly, as it appears from your
questions and existing bug reports). Two common results appear in bug
reports:
1) One possible result of a complete lack of kconfig tweaking (blindly
hitting <enter> during 'make oldconfig') is falling back to the
most-compatible configuration, the legacy IDE driver (either libata or
old-IDE), with resultant slow performance.
2) "no root! panic!" and similar I-cant-find-your-hard-drive results for
people with hardcoding root= configurations, for the minority where a
device moved from /dev/hdX -> /dev/sdX, or vice versa.
The damage is hoped to be limited to:
* Intel ICH5/6[/7?] users with combined mode enabled, which is a
not-small subset of all ICH[567] users.
* Users that did /not/ choose the combined_mode=libata kernel command
line option, a popular option for restoring performance /broken/ by
running two drivers in tandem [i.e. the old way, recently removed].
* In the combined mode configuration, one device is /dev/hdX (often the
CD-ROM) and one device is /dev/sdX, so only one of those devices will
move. Standard LVM and mount-by-label/uuid found in standard distro
installs makes this move seamless for many.
* ...in distros that hopefully took stock of their compatibility
picture, and modified their kernel configs and drivers accordingly.
Some distros were defaulting to combined_mode=libata (==libata drives
all applicable Intel ICHx IDE devices), others were not. That affects
the decision about kernel config changes.
Jeff
prev parent reply other threads:[~2007-06-16 15:36 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-31 14:45 Combined mode quirk removal kills performance Frank Sorenson
2007-05-31 15:46 ` Stephen Clark
[not found] ` <20070601165054.114e8b9d.akpm@linux-foundation.org>
[not found] ` <4660B47A.1030604@garzik.org>
[not found] ` <20070601171938.87989b62.akpm@linux-foundation.org>
[not found] ` <4661B2CC.8030409@garzik.org>
[not found] ` <20070616075347.96b2405d.akpm@linux-foundation.org>
2007-06-16 15:36 ` Jeff Garzik [this message]
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=46740395.6080702@garzik.org \
--to=jeff@garzik.org \
--cc=akpm@linux-foundation.org \
--cc=linux-ide@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.