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
parent reply other threads:[~2007-06-16 15:36 UTC|newest]
Thread overview: expand[flat|nested] mbox.gz Atom feed
[parent not found: <20070616075347.96b2405d.akpm@linux-foundation.org>]
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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).