libata: implement and use ATA_QCFLAG_QUIET
authorTejun Heo <htejun@gmail.com>
Fri, 26 Oct 2007 07:19:26 +0000 (16:19 +0900)
committerJeff Garzik <jeff@garzik.org>
Tue, 30 Oct 2007 13:59:43 +0000 (09:59 -0400)
commite027bd36c146582cef382364e5c826db93d4427b
tree45f3d3db848a5bd44bcb2191db17cbfd30f4911a
parentf90f0828e57e97cb1ff19520d252882cfc6fb3c0
libata: implement and use ATA_QCFLAG_QUIET

Implement ATA_QCFLAG_QUIET which indicates that there's no need to
report if the command fails with AC_ERR_DEV and set it for passthrough
commands.

Combined with previous changes, this now makes device errors for all
direct commands reported directly to the issuer without going through
EH actions and reporting.

Note that EH is still invoked after non-IO device errors to determine
the nature of the error and resume command execution (some controller
requires special care after error to continue).  It just performs
default maintenance after error, examines what's going on, realizes
that it's none of its business and reports the command failure without
logging any error messages.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/ata/libata-eh.c
drivers/ata/libata-scsi.c
include/linux/libata.h