aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/libata-core.c
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2006-04-11 09:26:29 -0400
committerJeff Garzik <jeff@garzik.org>2006-04-11 13:22:17 -0400
commitec573755fcd7975aae6b0d536dbcd74a6eed029c (patch)
tree58600b1d741ba2a8f5bfa214768469a5031d0b49 /drivers/scsi/libata-core.c
parent7dd29dd629bd5a4e6d8a164a9886da01f291ecf2 (diff)
[PATCH] libata: disable failed devices only once in ata_bus_probe()
Devices which consumed all their changes used to be disabled every iteration. This causes unnecessary noise in the console output. Disable once and leave alone. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/scsi/libata-core.c')
-rw-r--r--drivers/scsi/libata-core.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/scsi/libata-core.c b/drivers/scsi/libata-core.c
index 0075fe7404d5..9194e4a6a55a 100644
--- a/drivers/scsi/libata-core.c
+++ b/drivers/scsi/libata-core.c
@@ -1411,12 +1411,9 @@ static int ata_bus_probe(struct ata_port *ap)
1411 /* read IDENTIFY page and configure devices */ 1411 /* read IDENTIFY page and configure devices */
1412 for (i = 0; i < ATA_MAX_DEVICES; i++) { 1412 for (i = 0; i < ATA_MAX_DEVICES; i++) {
1413 dev = &ap->device[i]; 1413 dev = &ap->device[i];
1414 dev->class = classes[i];
1415 1414
1416 if (!tries[i]) { 1415 if (tries[i])
1417 ata_down_xfermask_limit(ap, dev, 1); 1416 dev->class = classes[i];
1418 ata_dev_disable(ap, dev);
1419 }
1420 1417
1421 if (!ata_dev_enabled(dev)) 1418 if (!ata_dev_enabled(dev))
1422 continue; 1419 continue;
@@ -1477,6 +1474,11 @@ static int ata_bus_probe(struct ata_port *ap)
1477 tries[dev->devno] = 0; 1474 tries[dev->devno] = 0;
1478 } 1475 }
1479 1476
1477 if (!tries[dev->devno]) {
1478 ata_down_xfermask_limit(ap, dev, 1);
1479 ata_dev_disable(ap, dev);
1480 }
1481
1480 goto retry; 1482 goto retry;
1481} 1483}
1482 1484