linux/drivers/ata
Damien Le Moal 636f6e2af4 libata: add horkage for missing Identify Device log
ACS-3 introduced the ATA Identify Device Data log as mandatory. A
warning message currently signals to the user if a device does not
report supporting this log page in the log directory page, regardless
of the ATA version of the device. Furthermore, this warning will appear
for all attempts at accessing this missing log page during device
revalidation.

Since it is useless to constantly access the log directory and warn
about this lack of support once we have discovered that the device
does not support this log page, introduce the horkage flag
ATA_HORKAGE_NO_ID_DEV_LOG to mark a device as lacking support for
the Identify Device Data log page. Set this flag when
ata_log_supported() returns false in ata_identify_page_supported().
The warning is printed only if the device ATA level is 10 or above
(ACS-3 or above), and only once on device scan. With this flag set, the
log directory page is not accessed again to test for Identify Device
Data log page support.

Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
2021-11-12 08:05:17 +09: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: Fix use of BCM7216 reset controller 2021-05-03 13:15:04 -05:00
ahci_ceva.c ata: ahci: ceva: Updated code by using dev_err_probe() 2021-04-06 09:25:01 -06: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-06-14 08:26:54 -06:00
ahci_tegra.c ata: ahci_tegra: call tegra_powergate_power_off only when PM domain is not present 2021-04-11 20:35:08 -06:00
ahci_xgene.c ata: ahci_xgene: Fix incorrect naming of 'xgene_ahci_handle_broken_edge_irq()'s 'host' param 2021-03-12 07:28:30 -07:00
ahci.c Add AHCI support for ASM1062+JBM575 cards 2021-10-12 10:00:36 +09:00
ahci.h scsi: ata: Switch to attribute groups 2021-10-16 21:45:52 -04:00
ata_generic.c ata: ata_generic: Fix misspelling of 'ata_generic_init_one()' 2021-03-30 20:21:26 -06:00
ata_piix.c scsi: ata: Switch to attribute groups 2021-10-16 21:45:52 -04:00
Kconfig ARM: SoC changes for 5.14 2021-07-10 09:22:44 -07:00
libahci_platform.c ata: ahci_platform: fix null-ptr-deref in ahci_platform_enable_regulators() 2021-10-14 12:22:47 +09:00
libahci.c scsi: ata: Switch to attribute groups 2021-10-16 21:45:52 -04:00
libata-acpi.c ata: libata-acpi: Fix function name and provide description for 'prev_gtf' 2021-03-30 20:21:26 -06:00
libata-core.c libata: add horkage for missing Identify Device log 2021-11-12 08:05:17 +09:00
libata-eh.c libata: fix read log timeout value 2021-11-11 10:55:32 +09: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 ata: libata-pmp: Fix misspelling of 'val' 2021-03-12 07:28:30 -07:00
libata-sata.c scsi: ata: Switch to attribute groups 2021-10-16 21:45:52 -04:00
libata-scsi.c SCSI misc on 20211105 2021-11-05 08:42:02 -07:00
libata-sff.c libata: fix ata_pio_sector for CONFIG_HIGHMEM 2021-07-09 08:28:20 -06:00
libata-trace.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 18 2019-05-21 11:28:46 +02:00
libata-transport.c ata: libata-transport: Fix some potential doc-rot issues 2021-03-12 07:28:30 -07: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 ata: pata_acpi: Fix some incorrect function param descriptions 2021-03-30 20:21:26 -06:00
pata_ali.c pata_ali: fix checking of DMA state 2021-10-12 17:46:52 +09:00
pata_amd.c pata_amd: fix checking of DMA state 2021-10-12 17:46:55 +09:00
pata_arasan_cf.c pata_arasan_cf: fix IRQ check 2021-03-26 17:13:02 -06:00
pata_artop.c ata: pata_artop: Repair possible copy/paste issue in 'artop_6210_qc_defer()'s header 2021-03-12 07:28:30 -07:00
pata_atiixp.c ata: pata_atiixp: Avoid overwriting initialised field in 'atiixp_sht' 2021-06-16 06:50:25 -06: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 ata: pata_cs5520: Avoid overwriting initialised field in 'cs5520_sht' 2021-06-16 06:50:25 -06:00
pata_cs5530.c ata: pata_cs5530: Avoid overwriting initialised field in 'cs5530_sht' 2021-06-16 06:50:25 -06: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 pata_cypress: add a module option to disable BM-DMA 2021-06-16 08:52:38 -06: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-05-27 13:03:48 -06:00
pata_falcon.c scsi: ata: Use scsi_cmd_to_rq() instead of scsi_cmnd.request 2021-08-11 22:25:37 -04: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 ata: pata_hpt3x2n: Fix possible doc-rotted function name 2021-03-12 07:28:31 -07: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 ata: pata_hpt37x: Fix some function misnaming and missing param issues 2021-03-12 07:28:30 -07:00
pata_hpt366.c ata: pata_hpt366: Provide missing description for 'hpt366_filter()'s 'mask' param 2021-03-12 07:28:30 -07:00
pata_icside.c ata: Avoid comma separated statements 2021-01-31 08:05:46 -07: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 ata: pata_it821x: Fix possible doc-rotted function names 2021-03-30 20:21:25 -06: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: ixp4xx: Rewrite to use device tree 2021-08-04 12:20:44 +02:00
pata_jmicron.c ata: pata_jmicron: Fix incorrectly documented function parameter 2021-03-12 07:28:31 -07:00
pata_legacy.c pata_legacy: fix a couple uninitialized variable bugs 2021-10-12 09:52:35 +09:00
pata_macio.c scsi: ata: Switch to attribute groups 2021-10-16 21:45:52 -04:00
pata_marvell.c ata: pata_marvell: Fix incorrectly documented function parameter 2021-03-12 07:28:31 -07: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: Trivial spelling fixes in the file pata_ns87415.c 2021-03-12 07:28:31 -07:00
pata_octeon_cf.c pata_octeon_cf: avoid WARN_ON() in ata_host_activate() 2021-05-19 15:54:42 -06: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 ata: pata_opti: Fix spelling issue of 'val' in 'opti_write_reg()' 2021-03-30 20:21:26 -06:00
pata_optidma.c pata_optidma: fix checking of DMA state 2021-10-12 17:46:59 +09: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 ata: pata_pdc202xx_old: Fix some incorrectly named functions 2021-03-30 20:21:25 -06:00
pata_pdc2027x.c ata: pata_pdc2027x: Fix some incorrect function names and parameter docs 2021-03-12 07:28:31 -07:00
pata_piccolo.c ata: pata_piccolo: 'ata_tosh_init()' is misnamed in its header 2021-03-30 20:21:25 -06:00
pata_platform.c pata_platform: Document `pio_mask' module parameter 2021-04-06 09:27:30 -06:00
pata_pxa.c ata: make qc_prep return ata_completion_errors 2019-11-01 08:50:51 -06:00
pata_radisys.c pata_radisys: fix checking of DMA state 2021-10-12 17:47:02 +09:00
pata_rb532_cf.c ata: rb532_cf: remove redundant codes 2021-06-24 18:49:01 -06: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 ata: pata_sc1200: sc1200_sht'Avoid overwriting initialised field in ' 2021-06-16 06:50:25 -06:00
pata_sch.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 300 2019-06-05 17:37:00 +02:00
pata_serverworks.c ata: pata_serverworks: Avoid overwriting initialised field in 'serverworks_osb4_sht 2021-06-16 06:50:26 -06:00
pata_sil680.c ata: pata_sil680: Add some missing function parameter docs 2021-03-30 20:21:25 -06:00
pata_sis.c ata: pata_sis: Remove superfluous param description and supply another 2021-03-30 20:21:25 -06:00
pata_sl82c105.c ata: pata_sl82c105: Fix potential doc-rot 2021-03-30 20:21:25 -06:00
pata_triflex.c ata: pata_triflex: Repair some misnamed functions and fix some param descriptions 2021-03-30 20:21:25 -06:00
pata_via.c ata: pata_via: Fix a kernel-doc formatting issue 2021-03-30 20:21:25 -06: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-07-27 19:30:06 -06:00
sata_fsl.c sata: fsl: fix DPRINTK format string 2021-05-17 09:12:40 -06: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 ata: sata_highbank: Remove unnecessary print function dev_err() 2021-11-11 10:55:32 +09:00
sata_inic162x.c ata: sata_inic162x fix a spelling issue 2020-04-23 09:59:30 -06:00
sata_mv.c SCSI misc on 20211105 2021-11-05 08:42:02 -07:00
sata_nv.c scsi: ata: Switch to attribute groups 2021-10-16 21:45:52 -04: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_sil24.c scsi: ata: Switch to attribute groups 2021-10-16 21:45:52 -04:00
sata_sil.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