diff options
author | Jeff Garzik <jeff@garzik.org> | 2006-09-28 06:50:24 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-09-28 06:50:24 -0400 |
commit | 35aa7a436c0901fd6f352eff347f58448c141a25 (patch) | |
tree | ac352a1bf5c7aaf11bd0dc525adce00b0e68e6cb | |
parent | d639ca94188fedbd8cfde1ab4ed9e9878ab2f01e (diff) |
[libata] Print out Status register, if a BSY-sleep takes too long
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>
-rw-r--r-- | drivers/ata/libata-core.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c index 72644bdecbb0..7ab45f42ae7b 100644 --- a/drivers/ata/libata-core.c +++ b/drivers/ata/libata-core.c | |||
@@ -2340,7 +2340,8 @@ unsigned int ata_busy_sleep (struct ata_port *ap, | |||
2340 | 2340 | ||
2341 | if (status & ATA_BUSY) | 2341 | if (status & ATA_BUSY) |
2342 | ata_port_printk(ap, KERN_WARNING, | 2342 | ata_port_printk(ap, KERN_WARNING, |
2343 | "port is slow to respond, please be patient\n"); | 2343 | "port is slow to respond, please be patient " |
2344 | "(Status 0x%x)\n", status); | ||
2344 | 2345 | ||
2345 | timeout = timer_start + tmout; | 2346 | timeout = timer_start + tmout; |
2346 | while ((status & ATA_BUSY) && (time_before(jiffies, timeout))) { | 2347 | while ((status & ATA_BUSY) && (time_before(jiffies, timeout))) { |
@@ -2350,7 +2351,8 @@ unsigned int ata_busy_sleep (struct ata_port *ap, | |||
2350 | 2351 | ||
2351 | if (status & ATA_BUSY) { | 2352 | if (status & ATA_BUSY) { |
2352 | ata_port_printk(ap, KERN_ERR, "port failed to respond " | 2353 | ata_port_printk(ap, KERN_ERR, "port failed to respond " |
2353 | "(%lu secs)\n", tmout / HZ); | 2354 | "(%lu secs, Status 0x%x)\n", |
2355 | tmout / HZ, status); | ||
2354 | return 1; | 2356 | return 1; |
2355 | } | 2357 | } |
2356 | 2358 | ||