linux/drivers/ata
Tejun Heo 534ead7092 libata: retry FS IOs even if it has failed with AC_ERR_INVALID
libata currently doesn't retry if a command fails with AC_ERR_INVALID
assuming that retrying won't get it any further even if retried.
However, a failure may be classified as invalid through hardware
glitch (incorrect reading of the error register or firmware bug) and
there isn't whole lot to gain by not retrying as actually invalid
commands will be failed immediately.  Also, commands serving FS IOs
are extremely unlikely to be invalid.  Retry FS IOs even if it's
marked invalid.

Transient and incorrect invalid failure was seen while debugging
firmware related issue on Samsung n130 on bko#14314.

  http://bugzilla.kernel.org/show_bug.cgi?id=14314

Signed-off-by: Tejun Heo <tj@kernel.org>
Reported-by: Johannes Stezenbach <js@sig21.net>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
2010-01-20 14:25:11 -05:00
..
ahci.c ahci: let users know that Promise PDC42819 support is limited to SATA devices 2009-12-03 14:36:17 -05:00
ata_generic.c pata_piccolo: Driver for old Toshiba chipsets 2009-12-03 14:35:31 -05:00
ata_piix.c ata_piix: enable 32bit PIO on SATA piix 2010-01-12 14:33:23 -05:00
Kconfig ACPI: do not select ACPI_DOCK from ATA_ACPI 2009-12-24 00:04:40 -05:00
libata-acpi.c libata-acpi: missing _SDD is not an error 2009-12-03 02:46:33 -05:00
libata-core.c libata: retry link resume if necessary 2010-01-12 14:34:14 -05:00
libata-eh.c libata: retry FS IOs even if it has failed with AC_ERR_INVALID 2010-01-20 14:25:11 -05:00
libata-pmp.c libata: add SATA PMP revision information for spec 1.2 2009-09-08 21:21:14 -04:00
libata-scsi.c libata: use the WRITE_SAME_16 define 2009-12-17 01:02:09 -05:00
libata-sff.c libata: fix reporting of drained bytes when clearing DRQ 2009-12-17 01:08:29 -05:00
libata.h libata: make gtf_filter per-dev 2009-10-06 00:26:27 -04:00
Makefile Merge commit 'origin/master' into next 2009-12-09 17:14:38 +11:00
pata_acpi.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_ali.c pata_ali: Fix regression with old devices 2009-12-03 02:46:36 -05:00
pata_amd.c pata_amd: do not filter out valid modes in nv_mode_filter 2009-09-17 16:46:41 -04:00
pata_artop.c pata_artop: Serializing support 2009-03-24 22:45:05 -04:00
pata_at32.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_at91.c pata_at91: fix resource release 2009-08-12 06:16:47 -04:00
pata_atiixp.c ahci / atiixp / pci quirks: rename AMD SB900 into Hudson-2 2009-10-16 06:21:20 -04:00
pata_atp867x.c pata_atp867x: add Power Management support 2009-10-06 20:58:23 -04:00
pata_bf54x.c pata_bf54x: handle portmuxing of pins through GPIO PORTs 2009-12-21 13:55:38 -05:00
pata_cmd64x.c pata_cmd64x: fix overclocking of UDMA0-2 modes 2009-12-20 15:42:12 -05:00
pata_cmd640.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_cs5520.c pata_cs5520: remove dead VDMA support 2009-12-03 15:52:51 -05:00
pata_cs5530.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_cs5535.c pata_cs5535: fix comment header typo 2009-11-09 09:40:55 +01:00
pata_cs5536.c pata_cs5536: use 32-bit BM DMA template instead of 16-bit. 2009-12-03 02:46:34 -05:00
pata_cypress.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_efar.c [libata] MWDMA0 is unsupported on PIIX-like PATA controllers 2009-12-03 17:52:16 -05:00
pata_hpt3x2n.c pata_hpt3x2n: fix clock turnaround 2009-12-17 01:11:27 -05:00
pata_hpt3x3.c pata_hpt3x3: Power Management fix 2009-12-03 15:58:53 -05:00
pata_hpt37x.c ata: use pci_dev->revision 2009-12-03 14:36:17 -05:00
pata_hpt366.c ata: use pci_dev->revision 2009-12-03 14:36:17 -05:00
pata_icside.c Merge branch 'origin' into devel 2009-03-28 20:29:51 +00:00
pata_isapnp.c [libata] Improve timeout handling 2009-03-24 22:52:39 -04:00
pata_it821x.c pata-it821x: use PCI_DEVICE_ID_RDC_D1010 define 2009-12-03 02:46:35 -05:00
pata_it8213.c pata_it8213: MWDMA0 is unsupported 2009-12-03 17:53:27 -05:00
pata_ixp4xx_cf.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
pata_jmicron.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_legacy.c pata_legacy: add pointers to QDI65x0 documentation 2009-12-03 16:06:47 -05:00
pata_macio.c libata/drivers: Add driver for Apple "MacIO" IDE controller 2009-12-09 17:09:28 +11:00
pata_marvell.c pata_marvell: fix marvell_pre_reset() documentation 2009-12-03 16:07:12 -05:00
pata_mpc52xx.c powerpc/5xxx: Add common mpc5xxx_get_bus_frequency() function 2009-06-17 00:30:22 -06:00
pata_mpiix.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_netcell.c pata_netcell: Fix typo 2009-06-08 09:12:28 -07:00
pata_ninja32.c ata: Report 16/32bit PIO as best we can 2009-04-16 15:28:23 -04:00
pata_ns87410.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_ns87415.c pata_ns87415: Power Management fix 2009-12-03 16:08:30 -05:00
pata_octeon_cf.c pata_octeon_cf: use resource_size(), to fix resource sizing bug 2009-12-17 01:02:50 -05:00
pata_of_platform.c powerpc: Fix no interrupt handling in pata_of_platform 2008-10-10 15:55:17 +11:00
pata_oldpiix.c [libata] MWDMA0 is unsupported on PIIX-like PATA controllers 2009-12-03 17:52:16 -05:00
pata_opti.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_optidma.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_palmld.c [ARM] 5522/1: PalmLD: IDE support 2009-05-31 14:50:40 +01:00
pata_pcmcia.c pcmcia: rework the irq_req_t typedef 2009-11-28 18:03:14 +01:00
pata_pdc202xx_old.c pata_pdc202xx_old: fix UDMA33 handling 2009-05-11 14:30:07 -04:00
pata_pdc2027x.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_piccolo.c pata_piccolo: Driver for old Toshiba chipsets 2009-12-03 14:35:31 -05:00
pata_platform.c drivers/ata: use resource_size 2009-09-11 02:25:58 -04:00
pata_qdi.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_radisys.c pata_radisys: fix UDMA handling 2009-12-03 16:11:24 -05:00
pata_rb532_cf.c drivers/ata: use resource_size 2009-09-11 02:25:58 -04:00
pata_rdc.c [libata] MWDMA0 is unsupported on PIIX-like PATA controllers 2009-12-03 17:52:16 -05:00
pata_rz1000.c pata_rz1000: Power Management fix 2009-12-03 16:12:35 -05:00
pata_sc1200.c pata_sc1200: Fix crash on boot 2009-10-16 06:22:40 -04:00
pata_scc.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_sch.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_serverworks.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_sil680.c ata: use pci_dev->revision 2009-12-03 14:36:17 -05:00
pata_sis.c Revert "pata_sis: Implement MWDMA for the UDMA 133 capable chips" 2009-12-07 11:41:25 -05:00
pata_sl82c105.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_triflex.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_via.c pata_via: clear UDMA transfer mode bit for PIO and MWDMA 2009-12-03 16:13:39 -05:00
pata_winbond.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pdc_adma.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
sata_fsl.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2009-12-09 19:43:33 -08:00
sata_inic162x.c drivers/ata: Remove unnecessary semicolons 2009-09-01 19:47:20 -04:00
sata_mv.c Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev 2009-12-19 11:04:29 -08:00
sata_nv.c [SCSI] modify change_queue_depth to take in reason why it is being called 2009-12-04 12:00:41 -06:00
sata_promise.c sata_promise: don't classify overruns as HSM errors 2010-01-12 14:33:07 -05:00
sata_promise.h libata annotations and fixes 2008-01-23 05:24:15 -05:00
sata_qstor.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
sata_sil.c [libata] sata_sil: disable DMA engine in sil_freeze() 2009-09-01 19:47:19 -04:00
sata_sil24.c sata_sil24: MSI support, disabled by default 2009-12-03 02:46:34 -05:00
sata_sis.c sata_sis: convert to slave_link 2009-09-08 21:17:36 -04:00
sata_svw.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
sata_sx4.c sata_sx4: speed up ECC initialization 2009-06-10 07:50:17 -04:00
sata_uli.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
sata_via.c sata_via: Remove redundant device ID for VIA VT8261 2009-11-03 14:27:06 -05:00
sata_vsc.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
sis.h libata: PATA-mode fixes for sis_sata 2007-07-02 10:17:42 -04:00