]> git.baikalelectronics.ru Git - kernel.git/commit
libata: no special completion processing for EH commands
authorTejun Heo <tj@kernel.org>
Thu, 9 Dec 2010 14:59:32 +0000 (15:59 +0100)
committerJeff Garzik <jgarzik@redhat.com>
Fri, 24 Dec 2010 18:34:18 +0000 (13:34 -0500)
commit1dcb43393d322fbc8c2229cb75cb8013cc4fe252
tree90d3a9d9e68edc07116be3f03795044a83c71c58
parentaa6ba433e751969e3c692a4f06c631d4a51503eb
libata: no special completion processing for EH commands

ata_qc_complete() contains special handling for certain commands.  For
example, it schedules EH for device revalidation after certain
configurations are changed.  These shouldn't be applied to EH
commands but they were.

In most cases, it doesn't cause an actual problem because EH doesn't
issue any command which would trigger special handling; however, ACPI
can issue such commands via _GTF which can cause weird interactions.

Restructure ata_qc_complete() such that EH commands are always passed
on to __ata_qc_complete().

stable: Please apply to -stable only after 2.6.38 is released.

Signed-off-by: Tejun Heo <tj@kernel.org>
Reported-by: Kyle McMartin <kyle@mcmartin.ca>
Cc: stable@kernel.org
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/ata/libata-core.c