• Linus Torvalds's avatar
    Merge tag 'ata-6.6-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata · 95289e49
    Linus Torvalds authored
    Pull ATA fixes from Damien Le Moal:
     "A larger than usual set of fixes for 6.6-rc4 due to the unexpected
      number of fixes needed to address ATA disks suspend/resume issues.
    
      In more detail:
    
       - Add missing additionalProperties on child nodes to the pata-common
         DT bindings (Rob)
    
       - Fix handling of the REPORT SUPPORTED OPERATION CODES command to
         ignore reserved bits (Niklas)
    
       - Increase port multiplier soft reset timeout to accomodate slow
         devices and avoid issues on wakeup (Matthias)
    
       - A couple of minor code fixes to avoid compilation warnings in
         libata-core and libata-eh (me)
    
       - Many patches from me to address suspend/resume issues, and in
         particular a potential deadlock on resume due to the SCSI disk
         driver resume operation not being synchronized with libata EH port
         resume handling.
    
         This is addressed by changing the scsi disk driver disk start/stop
         control to allow libata to execute disk suspend (spin down) and
         resume (spin up) on its own during system suspend/resume. Runtime
         suspend/resume control remains with the SCSI disk driver.
    
         Other fixes include:
          - Fix libata power management request issuing to avoid races
          - Establish a link between ATA ports and SCSI devices to order PM
            operations
          - Fix device removal to avoid issues with driver rmmod removal
          - Fix synchronization of libata device rescan and SCSI disk resume
            operation
          - Remove libsas PM operations as suspend/resume is handled
            directly by the sas controller resume
          - Fix the SCSI disk driver to not issue commands to suspended
            disks, thus avoiding potential system lock-up on resume"
    
    * tag 'ata-6.6-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata:
      ata: libata-eh: Fix compilation warning in ata_eh_link_report()
      ata: libata-core: Fix compilation warning in ata_dev_config_ncq()
      scsi: sd: Do not issue commands to suspended disks on shutdown
      ata: libata-core: Do not register PM operations for SAS ports
      ata: libata-scsi: Fix delayed scsi_rescan_device() execution
      scsi: Do not attempt to rescan suspended devices
      ata: libata-scsi: Disable scsi device manage_system_start_stop
      scsi: sd: Differentiate system and runtime start/stop management
      ata: libata-scsi: link ata port and scsi device
      ata: libata-core: Fix port and device removal
      ata: libata-core: Fix ata_port_request_pm() locking
      ata: libata-sata: increase PMP SRST timeout to 10s
      ata: libata-scsi: ignore reserved bits for REPORT SUPPORTED OPERATION CODES
      dt-bindings: ata: pata-common: Add missing additionalProperties on child nodes
    95289e49
libata-scsi.c 118 KB