]> git.karo-electronics.de Git - karo-tx-linux.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)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 21 Mar 2011 19:45:36 +0000 (12:45 -0700)
commiteed80090b96646eb9c670bab22cb6aba4b42497f
tree5ea6f54d7ac865b54f530876e2f727436ec3d26f
parent5e6964da4ef23f7c43d0fa3ade7b8898573a2b42
libata: no special completion processing for EH commands

commit f08dc1ac6b15c681f4643d8da1700e06c3855608 upstream.

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>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/ata/libata-core.c