History

Merge tag 'ata-7.2-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/libata/linux

Pull ata fixes from Damien Le Moal: - Fix PCI resource initialization in the sata_mv driver to keep legacy Marvell boards functional (Rosen) - Fix ahci_ceva driver initialization error path (Radhey) - Fix libata header file to remove a kernel doc compilation warning (Randy) - Increase the timeout for the STANDBY IMMEDIATE command to avoid suspend failures with drives that are slow to respond to this command (Matt) - Fixes for the handling of timed out commands in the presence of deferred non-NCQ commands, to avoid excessive delays in executing the error handler (me) - Disable link power management for a couple of WD drives that have been identified as not functioning properly when power management is used (Niklas) - Fix the device iteration loop when checking for link power management support to correctly handle port multiplier setups (Niklas) * tag 'ata-7.2-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/libata/linux: ata: libata-sata: fix ata_scsi_lpm_supported() iteration ata: libata-core: Disable LPM on WD Green 2.5 480GB ata: libata-core: Disable LPM on some WD drives scsi: libsas: terminate deferred commands on time out ata: libata-scsi: schedule deferred atapi command ata: libata-scsi: terminate deferred commands on time out ata: libata-eh: Increase STANDBY IMMEDIATE timeout ata: libata: avoid kernel-doc warnings ata: ahci_ceva: fix error paths in ceva_ahci_platform_enable_resources() ata: sata_mv: accept 1 or 2 resources in platform probe

Linus Torvalds committed 3 months ago

Commit f30ca2c2 parents f01618f 3fd70e911 files · +173 −46Browse files

Showing the changes to include (3 of 11 files). Show all

Unified · Split

3 files
  1. include/linux/ata.h +3 −3
  2. include/linux/libata.h +5 −1
  3. include/scsi/libsas.h +2 −0
include/linux/ata.h+3−3
@@ -762,8 +762,7 @@ static inline bool ata_id_sense_reporting_enabled(const u16 *id) · 761 unmodified lines
762 return id[ATA_ID_COMMAND_SET_4] & BIT(6);762 return id[ATA_ID_COMMAND_SET_4] & BIT(6);
763}763}
764 764
765/**765/*
766 *
767 * Word: 206 - SCT Command Transport766 * Word: 206 - SCT Command Transport
768 * 15:12 - Vendor Specific767 * 15:12 - Vendor Specific
769 * 11:6 - Reserved768 * 11:6 - Reserved
@@ -810,8 +809,9 @@ static inline bool ata_id_sct_supported(const u16 *id) · 40 unmodified lines
810 *809 *
811 * The practical impact of this is that ata_id_major_version cannot810 * The practical impact of this is that ata_id_major_version cannot
812 * reliably report on drives below ATA3.811 * reliably report on drives below ATA3.
812 *
813 * Returns: major version of ATA drive level or %0 if unknown
813 */814 */
814
815static inline unsigned int ata_id_major_version(const u16 *id)815static inline unsigned int ata_id_major_version(const u16 *id)
816{816{
817 unsigned int mver;817 unsigned int mver;
include/linux/libata.h+5−1
@@ -425,7 +425,7 @@ enum { · 424 unmodified lines
425 /* This should match the actual table size of425 /* This should match the actual table size of
426 * ata_eh_cmd_timeout_table in libata-eh.c.426 * ata_eh_cmd_timeout_table in libata-eh.c.
427 */427 */
428 ATA_EH_CMD_TIMEOUT_TABLE_SIZE = 8,428 ATA_EH_CMD_TIMEOUT_TABLE_SIZE = 9,
429 429
430 /* User visible DMA mask for DMA control. DO NOT renumber. */430 /* User visible DMA mask for DMA control. DO NOT renumber. */
431 ATA_DMA_MASK_ATA = (1 << 0), /* DMA on ATA Disk */431 ATA_DMA_MASK_ATA = (1 << 0), /* DMA on ATA Disk */
@@ -1153,6 +1153,9 @@ extern int ata_scsi_ioctl(struct scsi_device *dev, unsigned int cmd, · 721 unmodified lines
1153#endif1153#endif
1154extern enum scsi_qc_status ata_scsi_queuecmd(struct Scsi_Host *h,1154extern enum scsi_qc_status ata_scsi_queuecmd(struct Scsi_Host *h,
1155 struct scsi_cmnd *cmd);1155 struct scsi_cmnd *cmd);
1156enum scsi_timeout_action ata_scsi_retry_deferred_qc(struct ata_port *ap,
1157 struct scsi_cmnd *scmd);
1158enum scsi_timeout_action ata_scsi_eh_timed_out(struct scsi_cmnd *cmd);
1156#if IS_REACHABLE(CONFIG_ATA)1159#if IS_REACHABLE(CONFIG_ATA)
1157bool ata_scsi_dma_need_drain(struct request *rq);1160bool ata_scsi_dma_need_drain(struct request *rq);
1158#else1161#else
@@ -1464,6 +1467,7 @@ extern const struct attribute_group *ata_common_sdev_groups[]; · 305 unmodified lines
1464 .ioctl = ata_scsi_ioctl, \1467 .ioctl = ata_scsi_ioctl, \
1465 ATA_SCSI_COMPAT_IOCTL \1468 ATA_SCSI_COMPAT_IOCTL \
1466 .queuecommand = ata_scsi_queuecmd, \1469 .queuecommand = ata_scsi_queuecmd, \
1470 .eh_timed_out = ata_scsi_eh_timed_out, \
1467 .dma_need_drain = ata_scsi_dma_need_drain, \1471 .dma_need_drain = ata_scsi_dma_need_drain, \
1468 .this_id = ATA_SHT_THIS_ID, \1472 .this_id = ATA_SHT_THIS_ID, \
1469 .emulated = ATA_SHT_EMULATED, \1473 .emulated = ATA_SHT_EMULATED, \
include/scsi/libsas.h+2−0
@@ -705,6 +705,7 @@ void sas_task_abort(struct sas_task *); · 704 unmodified lines
705int sas_eh_abort_handler(struct scsi_cmnd *cmd);705int sas_eh_abort_handler(struct scsi_cmnd *cmd);
706int sas_eh_device_reset_handler(struct scsi_cmnd *cmd);706int sas_eh_device_reset_handler(struct scsi_cmnd *cmd);
707int sas_eh_target_reset_handler(struct scsi_cmnd *cmd);707int sas_eh_target_reset_handler(struct scsi_cmnd *cmd);
708enum scsi_timeout_action sas_eh_timed_out(struct scsi_cmnd *cmd);
708 709
709extern void sas_target_destroy(struct scsi_target *);710extern void sas_target_destroy(struct scsi_target *);
710extern int sas_sdev_init(struct scsi_device *);711extern int sas_sdev_init(struct scsi_device *);
@@ -743,6 +744,7 @@ void sas_notify_phy_event(struct asd_sas_phy *phy, enum phy_event event, · 32 unmodified lines
743 .this_id = -1, \744 .this_id = -1, \
744 .eh_device_reset_handler = sas_eh_device_reset_handler, \745 .eh_device_reset_handler = sas_eh_device_reset_handler, \
745 .eh_target_reset_handler = sas_eh_target_reset_handler, \746 .eh_target_reset_handler = sas_eh_target_reset_handler, \
747 .eh_timed_out = sas_eh_timed_out, \
746 .target_destroy = sas_target_destroy, \748 .target_destroy = sas_target_destroy, \
747 .ioctl = sas_ioctl, \749 .ioctl = sas_ioctl, \
748 750

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t