From: Tejun Heo <htejun@gmail.com>
To: jeff@garzik.org, hancockr@shaw.ca, linux-ide@vger.kernel.org
Subject: [PATCHSET #upstram-fixes] libata-acpi: improve ACPI corner case handling, take #2
Date: Sat, 15 Dec 2007 15:04:56 +0900 [thread overview]
Message-ID: <11976987063011-git-send-email-htejun@gmail.com> (raw)
Hello,
This is the second take of improve-ACPI-corner-case-handling patchset
and contains the following ten patches.
0001-libata-acpi-adjust-constness-in-ata_acpi_gtm-stm.patch
0002-libata-update-ata_-_printk-macros-such-that-level.patch
0003-libata-add-more-opcodes-to-ata.h.patch
0004-libata-ata_dev_disable-should-be-called-from-EH-c.patch
0005-libata-acpi-add-new-hooks-ata_acpi_dissociate-and.patch
0006-libata-acpi-implement-and-use-ata_acpi_init_gtm.patch
0007-libata-acpi-implement-dev-gtf_cache-and-evaluate-_.patch
0008-libata-acpi-improve-ACPI-disabling.patch
0009-libata-acpi-improve-_GTF-execution-error-handling-a.patch
0010-libata-acpi-implement-_GTF-command-filtering.patch
Changes from the last take [L] are...
* @stm parameter is constified in 0001.
* 0005 is added. This patch adds two ATA ACPI hooks for host
dissociation and device disable. The former is used to restore
initial _GTM setting on driver detach. The latter is used to
implement _GTF caching in 0007.
* 0006 updated such that init_gtm completely replaces all internal
_GTM data usage and init_gtm is restored using _STM on driver
detach. This change makes ignore-_GTM-failure-during-suspend patch
unnecesary.
* 0007 is added. This makes IDE _GTF evaluated right after _STM
during resume.
* 0008 is updated such that ACPI evaulation failure doesn't trigger
ACPI disabling unless it causes other failures.
* 0010 now also filters SET FEATURES - SET XFERMODE. SETXFER from
_GTF only disrupts device configuration by putting the device in
possibly inconsistent mode from the controller.
The biggest change is that _GTM is now only performed on driver
attach. The cached init_gtm value is used during resume. This,
combined with moving _GTF evaluation right after _STM, solves all
currently known _GTM, _STM and _GTF evaluation failures. By feeding
the initial values configured by the BIOS, it can avoid problems of
missing table entries or what not.
This makes ACPI mode configuration for both controller and device
meaningless but libata doesn't use them anyway. In fact, all they do
is disrupting device configuration by feeding inconsistent mode to
devices via _GTF taskfiles, which are filtered by 0010 now.
Note that in many cases, _GTM/_STM implementations are very brittle
and can't be used as generic dynamic configuration method.
This patch fixes all known ATA ACPI related regressions including OSDL
bugs 9320 and 9530.
Thanks.
--
tejun
[L] http://thread.gmane.org/gmane.linux.ide/26334
next reply other threads:[~2007-12-15 6:05 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-15 6:04 Tejun Heo [this message]
2007-12-15 6:04 ` [PATCH 01/10] libata-acpi: adjust constness in ata_acpi_gtm/stm() parameters Tejun Heo
2007-12-18 1:34 ` Jeff Garzik
2007-12-18 1:35 ` Jeff Garzik
2007-12-15 6:04 ` [PATCH 02/10] libata: update ata_*_printk() macros such that level can be a variable Tejun Heo
2007-12-15 6:04 ` [PATCH 03/10] libata: add more opcodes to ata.h Tejun Heo
2007-12-15 6:05 ` [PATCH 04/10] libata: ata_dev_disable() should be called from EH context Tejun Heo
2007-12-15 6:05 ` [PATCH 05/10] libata-acpi: add new hooks ata_acpi_dissociate() and ata_acpi_on_disable() Tejun Heo
2007-12-15 6:05 ` [PATCH 06/10] libata-acpi: implement and use ata_acpi_init_gtm() Tejun Heo
2007-12-15 6:05 ` [PATCH 07/10] libata-acpi: implement dev->gtf_cache and evaluate _GTF right after _STM during resume Tejun Heo
2007-12-15 6:05 ` [PATCH 08/10] libata-acpi: improve ACPI disabling Tejun Heo
2007-12-15 6:05 ` [PATCH 09/10] libata-acpi: improve _GTF execution error handling and reporting Tejun Heo
2007-12-15 6:05 ` [PATCH 10/10] libata-acpi: implement _GTF command filtering Tejun Heo
2007-12-15 6:15 ` git repo and #upstream merging Tejun Heo
2007-12-18 1:54 ` Jeff Garzik
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=11976987063011-git-send-email-htejun@gmail.com \
--to=htejun@gmail.com \
--cc=hancockr@shaw.ca \
--cc=jeff@garzik.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).