aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2006-03-05 17:55:58 +0900
committerJeff Garzik <jeff@garzik.org>2006-03-05 11:09:42 -0500
commit208a9933bc7d71e7ad194a9ffbfbcd7878c48dfe (patch)
treee3aee404b45add338986a18031eecce2d97f5a27
parente653a1e6131d0a819288a2e2de654627233604e0 (diff)
[PATCH] libata: re-initialize parameters before configuring
In ata_dev_configure(), reinitialize parameters before configuring. This change is for revalidation and hotplug. As ata_dev_configure() can be entered multiple times, parameters need to be reinitialized. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r--drivers/scsi/libata-core.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/scsi/libata-core.c b/drivers/scsi/libata-core.c
index b710fc48074..59828490a75 100644
--- a/drivers/scsi/libata-core.c
+++ b/drivers/scsi/libata-core.c
@@ -1086,6 +1086,15 @@ static int ata_dev_configure(struct ata_port *ap, struct ata_device *dev)
DPRINTK("ENTER, host %u, dev %u\n", ap->id, dev->devno);
+ /* initialize to-be-configured parameters */
+ dev->flags = 0;
+ dev->max_sectors = 0;
+ dev->cdb_len = 0;
+ dev->n_sectors = 0;
+ dev->cylinders = 0;
+ dev->heads = 0;
+ dev->sectors = 0;
+
/*
* common ATA, ATAPI feature tests
*/