kernel_optimize_test/drivers/ata
Reimar Döffinger 701cf28e01 libata: fix checking of DMA state
commit f971a85439bd25dc7b4d597cf5e4e8dc7ffc884b upstream.

Checking if DMA is enabled should be done via the
ata_dma_enabled helper function, since the init state
0xff indicates disabled.
This meant that ATA_CMD_READ_LOG_DMA_EXT was used and probed
for before DMA was enabled, which caused hangs for some combinations
of controllers and devices.
It might also have caused it to be incorrectly disabled as broken,
but there have been no reports of that.

Cc: stable@vger.kernel.org
BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=195895
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Tested-by: Paul Menzel <pmenzel@molgen.mpg.de>
Signed-off-by: Damien Le Moal <damien.lemoal@wdc.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-11-18 14:03:46 +01:00
..
acard-ahci.c ata/acard_ahci: remove unused variable n_elem 2020-01-22 10:32:51 -07:00
ahci_brcm.c ata: ahci_brcm: Add back regulators management 2021-03-04 11:37:45 +01:00
ahci_ceva.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 201 2019-05-30 11:29:52 -07:00
ahci_da850.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 45 2019-05-24 17:27:12 +02:00
ahci_dm816.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 45 2019-05-24 17:27:12 +02:00
ahci_imx.c ata: ahci-imx: remove redundant assignment to ret 2020-04-07 14:49:45 -06:00
ahci_mtk.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
ahci_mvebu.c ata: ahci: mvebu: Make SATA PHY optional for Armada 3720 2020-10-09 12:47:56 -06:00
ahci_octeon.c
ahci_platform.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 45 2019-05-24 17:27:12 +02:00
ahci_qoriq.c ahci: qoriq: enable acpi support in qoriq ahci driver 2020-10-02 14:53:37 -06:00
ahci_seattle.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 235 2019-06-19 17:09:07 +02:00
ahci_st.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ahci_sunxi.c ata: ahci_sunxi: Disable DIPM 2021-07-19 09:44:59 +02:00
ahci_tegra.c ahci: tegra: use regulator_bulk_set_supply_names() 2019-10-25 14:26:41 -06:00
ahci_xgene.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 2019-05-21 11:28:45 +02:00
ahci.c ata: ahci: Disable SXS for Hisilicon Kunpeng920 2021-05-11 14:47:26 +02:00
ahci.h ata: ahci: Disable SXS for Hisilicon Kunpeng920 2021-05-11 14:47:26 +02:00
ata_generic.c
ata_piix.c ata_piix: remove open-coded dmi_match(DMI_OEM_STRING) 2019-11-06 20:34:25 -07:00
Kconfig treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
libahci_platform.c ata: ahci_platform: fix null-ptr-deref in ahci_platform_enable_regulators() 2021-10-20 11:45:05 +02:00
libahci.c ata: ahci: Disable SXS for Hisilicon Kunpeng920 2021-05-11 14:47:26 +02:00
libata-acpi.c treewide: Add SPDX license identifier for missed files 2019-05-21 10:50:45 +02:00
libata-core.c libata: fix checking of DMA state 2021-11-18 14:03:46 +01:00
libata-eh.c libata: fix read log timeout value 2021-11-18 14:03:37 +01:00
libata-pata-timings.c ata: separate PATA timings code from libata-core.c 2020-03-26 10:28:19 -06:00
libata-pmp.c libata: Return correct status in sata_pmp_eh_recover_pm() when ATA_DFLAG_DETACH is set 2020-04-07 14:45:15 -06:00
libata-sata.c ata: move ata_eh_analyze_ncq_error() & co. to libata-sata.c 2020-03-26 10:28:20 -06:00
libata-scsi.c ata: fix some kernel-doc markups 2020-10-23 12:20:32 -06:00
libata-sff.c libata: fix ata_pio_sector for CONFIG_HIGHMEM 2021-08-12 13:22:19 +02:00
libata-trace.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 18 2019-05-21 11:28:46 +02:00
libata-transport.c libata: transport: Use scnprintf() for avoiding potential buffer overflow 2020-03-12 07:38:47 -06:00
libata-transport.h
libata-zpodd.c libata: zpodd: Fix small read overflow in zpodd_get_mech_type() 2019-07-29 16:00:14 -06:00
libata.h ata: make "libata.force" kernel parameter optional 2020-03-26 10:28:20 -06:00
Makefile ata: start separating SATA specific code from libata-core.c 2020-03-26 10:28:19 -06:00
pata_acpi.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_ali.c
pata_amd.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_arasan_cf.c pata_arasan_cf: fix IRQ check 2021-05-14 09:50:24 +02:00
pata_artop.c ata: pata_artop: make arrays static const, makes object smaller 2019-11-08 07:26:31 -07:00
pata_atiixp.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_atp867x.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
pata_bk3710.c pata_bk3710: clarify license version and use SPDX header 2018-03-01 13:59:03 -08:00
pata_buddha.c ata/pata_buddha: Probe via modalias instead of initcall 2019-08-23 06:58:50 -06:00
pata_cmd64x.c pata_cmd64x: Use fallthrough pseudo-keyword 2020-10-02 17:51:30 -06:00
pata_cmd640.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_cs5520.c libata: switch remaining drivers to use dma_set_mask_and_coherent 2019-08-26 13:58:59 -06:00
pata_cs5530.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 2019-06-05 17:37:06 +02:00
pata_cs5535.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 2019-06-05 17:37:06 +02:00
pata_cs5536.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 2019-06-05 17:37:06 +02:00
pata_cypress.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_efar.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_ep93xx.c pata_ep93xx: fix deferred probing 2021-07-14 16:56:04 +02:00
pata_falcon.c m68k/atari: Convert Falcon IDE drivers to platform drivers 2019-11-18 10:18:59 +01:00
pata_ftide010.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_gayle.c ata: add Amiga Gayle PATA controller driver 2018-03-19 07:41:36 -07:00
pata_hpt3x2n.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_hpt3x3.c libata: switch remaining drivers to use dma_set_mask_and_coherent 2019-08-26 13:58:59 -06:00
pata_hpt37x.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_hpt366.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_icside.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_imx.c Merge branch 'for-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata 2018-08-24 13:20:33 -07:00
pata_isapnp.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_it821x.c pata_it821x: Delete an error message for a failed memory allocation in it821x_firmware_command() 2018-02-18 05:26:07 -08:00
pata_it8213.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_ixp4xx_cf.c pata_ipx4xx_cf: fix IRQ check 2021-05-14 09:50:24 +02:00
pata_jmicron.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_legacy.c pata_legacy: fix a couple uninitialized variable bugs 2021-10-20 11:45:04 +02:00
pata_macio.c ata: pata_macio: fix comparing pointer to 0 2020-01-22 10:31:55 -07:00
pata_marvell.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_mpc52xx.c pata_mpc52xx: Delete an error message for a failed memory allocation in mpc52xx_ata_probe() 2018-02-18 05:23:25 -08:00
pata_mpiix.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_netcell.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_ninja32.c libata: switch remaining drivers to use dma_set_mask_and_coherent 2019-08-26 13:58:59 -06:00
pata_ns87410.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 18 2019-05-21 11:28:46 +02:00
pata_ns87415.c ata: pata_ns87415.c: Document support on parisc with superio chip 2020-10-23 20:23:47 +02:00
pata_octeon_cf.c pata_octeon_cf: avoid WARN_ON() in ata_host_activate() 2021-07-14 16:56:04 +02:00
pata_of_platform.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
pata_oldpiix.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_opti.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_optidma.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_palmld.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
pata_pcmcia.c pata_pcmia: add SanDisk High (>8G) CF card to supported list 2020-01-29 20:54:51 -07:00
pata_pdc202xx_old.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_pdc2027x.c libata: switch remaining drivers to use dma_set_mask_and_coherent 2019-08-26 13:58:59 -06:00
pata_piccolo.c
pata_platform.c ata: pata_platform: Add IRQF_SHARED to IRQ flags 2019-02-08 06:42:55 -07:00
pata_pxa.c ata: make qc_prep return ata_completion_errors 2019-11-01 08:50:51 -06:00
pata_radisys.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_rb532_cf.c pata_rb532_cf: fix deferred probing 2021-07-14 16:56:03 +02:00
pata_rdc.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 18 2019-05-21 11:28:46 +02:00
pata_rz1000.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_samsung_cf.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
pata_sc1200.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 2019-06-05 17:37:06 +02:00
pata_sch.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 300 2019-06-05 17:37:00 +02:00
pata_serverworks.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
pata_sil680.c libata: switch remaining drivers to use dma_set_mask_and_coherent 2019-08-26 13:58:59 -06:00
pata_sis.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_sl82c105.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pata_triflex.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 2019-06-05 17:37:06 +02:00
pata_via.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
pdc_adma.c ata: make qc_prep return ata_completion_errors 2019-11-01 08:50:51 -06:00
sata_dwc_460ex.c ata: sata_dwc_460ex: No need to call phy_exit() befre phy_init() 2021-09-18 13:40:23 +02:00
sata_fsl.c libata: Fix retrieving of active qcs 2019-12-25 17:08:33 -07:00
sata_gemini.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
sata_gemini.h
sata_highbank.c sata_highbank: fix deferred probing 2021-07-14 16:56:03 +02:00
sata_inic162x.c ata: sata_inic162x fix a spelling issue 2020-04-23 09:59:30 -06:00
sata_mv.c ata: sata_mv: Fix the error handling of mv_chip_id() 2021-11-02 19:48:19 +01:00
sata_nv.c ata: sata_nv: Fix retrieving of active qcs 2020-10-28 07:58:09 -06:00
sata_promise.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
sata_promise.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 18 2019-05-21 11:28:46 +02:00
sata_qstor.c ata: make qc_prep return ata_completion_errors 2019-11-01 08:50:51 -06:00
sata_rcar.c ata: sata_rcar: Fix DMA boundary mask 2020-10-16 09:32:11 -06:00
sata_sil.c ata: make qc_prep return ata_completion_errors 2019-11-01 08:50:51 -06:00
sata_sil24.c ata: make qc_prep return ata_completion_errors 2019-11-01 08:50:51 -06:00
sata_sis.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 18 2019-05-21 11:28:46 +02:00
sata_svw.c libata: switch remaining drivers to use dma_set_mask_and_coherent 2019-08-26 13:58:59 -06:00
sata_sx4.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
sata_uli.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 18 2019-05-21 11:28:46 +02:00
sata_via.c libata: switch remaining drivers to use dma_set_mask_and_coherent 2019-08-26 13:58:59 -06:00
sata_vsc.c libata: switch remaining drivers to use dma_set_mask_and_coherent 2019-08-26 13:58:59 -06:00
sis.h