|
@@ -5912,6 +5912,7 @@ static int ata_host_request_pm(struct ata_host *host, pm_message_t mesg,
|
|
|
|
|
|
for (i = 0; i < host->n_ports; i++) {
|
|
|
struct ata_port *ap = host->ports[i];
|
|
|
+ struct ata_link *link;
|
|
|
|
|
|
/* Previous resume operation might still be in
|
|
|
* progress. Wait for PM_PENDING to clear.
|
|
@@ -5931,8 +5932,10 @@ static int ata_host_request_pm(struct ata_host *host, pm_message_t mesg,
|
|
|
}
|
|
|
|
|
|
ap->pflags |= ATA_PFLAG_PM_PENDING;
|
|
|
- ap->link.eh_info.action |= action;
|
|
|
- ap->link.eh_info.flags |= ehi_flags;
|
|
|
+ __ata_port_for_each_link(link, ap) {
|
|
|
+ link->eh_info.action |= action;
|
|
|
+ link->eh_info.flags |= ehi_flags;
|
|
|
+ }
|
|
|
|
|
|
ata_port_schedule_eh(ap);
|
|
|
|