libata: add command name parsing for error output
authorRobert Hancock <hancockrwd@gmail.com>
Wed, 15 Jul 2009 02:43:39 +0000 (20:43 -0600)
committerJeff Garzik <jgarzik@redhat.com>
Tue, 1 Sep 2009 23:47:20 +0000 (19:47 -0400)
commit6521148c6449724c3b707820b9c535c7e8b8afcd
treeb976cb33b4e7f09bdc765a09702659c14474c540
parent1e641060c4b564e820abdb6a4c7a603a0d386250
libata: add command name parsing for error output

This patch improve libata's output for error/notification messages
to allow easier comprehension and debugging:

When ATAPI commands issued through the SCSI layer fail, use SCSI
functions to print the CDB in human-readable form instead of just
dumping out the CDB in hex.

Print out the name of the failed command (as defined by the ATA
specification) in error handling output along with the raw register
contents.

When reporting status of ACPI taskfile commands executed on resume,
also output the names of the commands being executed (or not) in
readable form.

Since the extra data for printing command names increases kernel
size slightly, a config option has been added to allow disabling
command name output (as well as some of the error register parsing)
for those highly sensitive to kernel text size.

Signed-off-by: Robert Hancock <hancockrwd@gmail.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/ata/Kconfig
drivers/ata/libata-acpi.c
drivers/ata/libata-eh.c
drivers/ata/libata.h
include/linux/ata.h