remarkable-linux/drivers/ata
Tejun Heo 56c819df77 libata: update ATAPI overflow draining
For misc ATAPI commands which transfer variable length data to the
host, overflow can occur due to application or hardware bug.  Such
overflows can be ignored safely as long as overflow data is properly
drained.  libata HSM implementation has this implemented in
__atapi_pio_bytes() and recently updated for 2.6.24-rc but it requires
further improvements.  Improve drain logic such that...

* Report overflow errors using ehi desc mechanism instead of printing
  directly.

* Properly calculate the number of bytes to be drained considering
  actual number of consumed bytes for partial draining.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Acked-by: Albert Lee <albertcc@tw.ibm.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-02-19 11:35:37 +01:00
..
ahci.c ahci: fix CAP.NP and PI handling 2008-02-06 06:59:27 -05:00
ata_generic.c ata_generic: Cenatek support 2008-01-23 05:24:17 -05:00
ata_piix.c ata: fix sparse warning in ata_piix.c 2008-02-15 13:50:58 -05:00
Kconfig sata_mv: Remove PCI dependency 2008-02-01 12:26:37 -05:00
libata-acpi.c libata: reimplement ata_acpi_cbl_80wire() using ata_acpi_gtm_xfermask() 2008-01-23 05:24:12 -05:00
libata-core.c libata: update ATAPI overflow draining 2008-02-19 11:35:37 +01:00
libata-eh.c libata: fix off-by-one in error categorization 2008-01-23 05:24:17 -05:00
libata-pmp.c libata-pmp: 4726 hates SRST 2008-01-10 16:53:12 -05:00
libata-scsi.c ata: make ata_scsiop_inq_89 static in libata-scsi.c 2008-02-15 13:50:53 -05:00
libata-sff.c libata: factor out ata_pci_activate_sff_host() from ata_pci_one() 2008-01-23 05:24:16 -05:00
libata.h libata: move ata_set_mode() to libata-eh.c 2008-01-23 05:24:10 -05:00
Makefile Merge branch 'linux-2.6' 2008-01-31 11:25:51 +11:00
pata_acpi.c ata: fix sparse warning in pata_acpi.c 2008-02-15 13:51:33 -05:00
pata_ali.c libata: checkpatch fixes 2008-01-23 05:24:10 -05:00
pata_amd.c ata: sparse fixes for pata_amd.c 2008-02-15 13:51:24 -05:00
pata_artop.c
pata_at32.c drivers/ata/: Spelling fixes 2008-02-03 17:08:11 +02:00
pata_atiixp.c
pata_bf54x.c Blackfin pata-bf54x driver: fix compiling bug - no ata_port struct in struct ata_device any more 2008-02-01 12:26:43 -05:00
pata_cmd64x.c
pata_cmd640.c
pata_cs5520.c PCI: Remove users of pci_enable_device_bars() 2008-02-01 15:04:27 -08:00
pata_cs5530.c
pata_cs5535.c
pata_cs5536.c ata: fix sparse warning in pata_cs5536.c 2008-02-15 13:51:27 -05:00
pata_cypress.c
pata_efar.c drivers/ata/: Spelling fixes 2008-02-03 17:08:11 +02:00
pata_hpt3x2n.c
pata_hpt3x3.c
pata_hpt37x.c pata_hpt37x: checkpatch fixes 2008-01-23 05:24:13 -05:00
pata_hpt366.c
pata_icside.c libata: convert to chained sg 2008-01-23 05:24:14 -05:00
pata_isapnp.c pata_isapnp: Polled devices 2007-11-23 19:33:27 -05:00
pata_it821x.c libata/pata_it821x: Improve handling of poorly compatible emulations 2008-01-23 05:24:15 -05:00
pata_it8213.c drivers/ata/: Spelling fixes 2008-02-03 17:08:11 +02:00
pata_ixp4xx_cf.c libata: update ->data_xfer hook for ATAPI 2008-01-23 05:24:14 -05:00
pata_jmicron.c ata: fix sparse warning in pata_jmicron.c 2008-02-15 13:51:29 -05:00
pata_legacy.c pata_legacy: don't call ata_host_detach() after initialization failure 2008-02-15 13:51:12 -05:00
pata_marvell.c ata: fix sparse warning in pata_marvell.c 2008-02-15 13:51:30 -05:00
pata_mpc52xx.c Merge branch 'linux-2.6' 2008-01-31 11:25:51 +11:00
pata_mpiix.c
pata_netcell.c
pata_ninja32.c pata_ninja32: setup changes 2008-02-11 14:30:07 -05:00
pata_ns87410.c
pata_ns87415.c pata_ns87415: define SUPERIO_IDE_MAX_RETRIES 2007-10-29 06:21:33 -04:00
pata_of_platform.c Rename: linux/pata_platform.h to linux/ata_platform.h 2008-02-06 06:54:17 -05:00
pata_oldpiix.c
pata_opti.c
pata_optidma.c
pata_pcmcia.c pata_pcmcia: convert to new data_xfer prototype 2008-01-23 05:24:15 -05:00
pata_pdc202xx_old.c libata: rename ATA_PROT_ATAPI_* to ATAPI_PROT_* 2008-01-23 05:24:14 -05:00
pata_pdc2027x.c libata annotations and fixes 2008-01-23 05:24:15 -05:00
pata_platform.c Rename: linux/pata_platform.h to linux/ata_platform.h 2008-02-06 06:54:17 -05:00
pata_qdi.c libata: update ->data_xfer hook for ATAPI 2008-01-23 05:24:14 -05:00
pata_radisys.c
pata_rz1000.c
pata_sc1200.c
pata_scc.c pata_scc.c: add thaw ops 2008-02-15 13:51:22 -05:00
pata_serverworks.c pata_serverworks: Fix cable types and cosmetics 2008-01-23 05:24:17 -05:00
pata_sil680.c pata_sil680: kill bogus reset code (take 2) 2007-11-23 19:23:55 -05:00
pata_sis.c drivers/ata/: Spelling fixes 2008-02-03 17:08:11 +02:00
pata_sl82c105.c pata_sl82c105: dual channel support 2008-02-01 12:26:40 -05:00
pata_triflex.c
pata_via.c pata_via: fix SATA cable detection on cx700 2008-02-11 14:29:42 -05:00
pata_winbond.c pata_winbond: error return 2008-01-23 05:24:17 -05:00
pdc_adma.c libata: convert to chained sg 2008-01-23 05:24:14 -05:00
sata_fsl.c libata: kill now unused n_iter and fix sata_fsl 2008-02-06 06:59:32 -05:00
sata_inic162x.c iommu sg merging: sata_inic162x: use pci_set_dma_max_seg_size 2008-02-05 09:44:11 -08:00
sata_mv.c ata: fix sparse warnings in sata_mv.c 2008-02-15 13:51:03 -05:00
sata_nv.c sata_nv: fix ATAPI issues with memory over 4GB (v7) 2008-02-06 07:00:27 -05:00
sata_promise.c ata: fix sparse warning in sata_promise.c 2008-02-15 13:50:59 -05:00
sata_promise.h libata annotations and fixes 2008-01-23 05:24:15 -05:00
sata_qstor.c libata: convert to chained sg 2008-01-23 05:24:14 -05:00
sata_sil.c libata: implement protocol tests 2008-01-23 05:24:10 -05:00
sata_sil24.c libata: convert to chained sg 2008-01-23 05:24:14 -05:00
sata_sis.c [libata] Address some checkpatch-spotted issues 2007-10-29 06:15:27 -04:00
sata_svw.c [libata] Address some checkpatch-spotted issues 2007-10-29 06:15:27 -04:00
sata_sx4.c libata annotations and fixes 2008-01-23 05:24:15 -05:00
sata_uli.c [libata] Address some checkpatch-spotted issues 2007-10-29 06:15:27 -04:00
sata_via.c ata: fix sparse warning in sata_via.c 2008-02-15 13:51:01 -05:00
sata_vsc.c [libata] Address some checkpatch-spotted issues 2007-10-29 06:15:27 -04:00
sis.h