[libata] Print out Status register, if a BSY-sleep takes too long
authorJeff Garzik <jeff@garzik.org>
Thu, 28 Sep 2006 10:50:24 +0000 (06:50 -0400)
committerJeff Garzik <jeff@garzik.org>
Thu, 28 Sep 2006 10:50:24 +0000 (06:50 -0400)
We have the info stored in an ata_busy_sleep() variable, so might as
well print it, and provide some additional diagnostic info.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/ata/libata-core.c

index 72644bd..7ab45f4 100644 (file)
@@ -2340,7 +2340,8 @@ unsigned int ata_busy_sleep (struct ata_port *ap,
 
        if (status & ATA_BUSY)
                ata_port_printk(ap, KERN_WARNING,
-                               "port is slow to respond, please be patient\n");
+                               "port is slow to respond, please be patient "
+                               "(Status 0x%x)\n", status);
 
        timeout = timer_start + tmout;
        while ((status & ATA_BUSY) && (time_before(jiffies, timeout))) {
@@ -2350,7 +2351,8 @@ unsigned int ata_busy_sleep (struct ata_port *ap,
 
        if (status & ATA_BUSY) {
                ata_port_printk(ap, KERN_ERR, "port failed to respond "
-                               "(%lu secs)\n", tmout / HZ);
+                               "(%lu secs, Status 0x%x)\n",
+                               tmout / HZ, status);
                return 1;
        }