|
@@ -3653,9 +3653,13 @@ int sata_link_hardreset(struct ata_link *link, const unsigned long *timing,
|
|
|
if (check_ready)
|
|
|
rc = ata_wait_ready(link, deadline, check_ready);
|
|
|
out:
|
|
|
- if (rc && rc != -EAGAIN)
|
|
|
+ if (rc && rc != -EAGAIN) {
|
|
|
+ /* online is set iff link is online && reset succeeded */
|
|
|
+ if (online)
|
|
|
+ *online = false;
|
|
|
ata_link_printk(link, KERN_ERR,
|
|
|
"COMRESET failed (errno=%d)\n", rc);
|
|
|
+ }
|
|
|
DPRINTK("EXIT, rc=%d\n", rc);
|
|
|
return rc;
|
|
|
}
|