diff options
author | Tejun Heo <htejun@gmail.com> | 2007-05-17 10:43:26 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2007-05-17 20:57:38 -0400 |
commit | d9aca22cf443f5ed77d15a320abbab055ae4a976 (patch) | |
tree | a808d879baf21a557a93e9ef3a0d96b004985f8b /drivers/ata/libata-scsi.c | |
parent | 1daf9ce74e0e0ef8ffde800ab495339458c3375f (diff) |
libata: remove libata.spindown_compat
With STANDBYDOWN tracking added, libata.spindown_compat isn't
necessary anymore. If userspace shutdown(8) issues STANDBYNOW, libata
warns. If userspace shutdown(8) doesn't issue STANDBYNOW, libata does
the right thing. Userspace can tell whether kernel supports spindown
by testing whether sysfs node manage_start_stop exists as before.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/ata/libata-scsi.c')
-rw-r--r-- | drivers/ata/libata-scsi.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c index b6a1de8fad5b..242c43eef807 100644 --- a/drivers/ata/libata-scsi.c +++ b/drivers/ata/libata-scsi.c | |||
@@ -893,7 +893,7 @@ int ata_scsi_change_queue_depth(struct scsi_device *sdev, int queue_depth) | |||
893 | return queue_depth; | 893 | return queue_depth; |
894 | } | 894 | } |
895 | 895 | ||
896 | /* XXX: for ata_spindown_compat */ | 896 | /* XXX: for spindown warning */ |
897 | static void ata_delayed_done_timerfn(unsigned long arg) | 897 | static void ata_delayed_done_timerfn(unsigned long arg) |
898 | { | 898 | { |
899 | struct scsi_cmnd *scmd = (void *)arg; | 899 | struct scsi_cmnd *scmd = (void *)arg; |
@@ -901,7 +901,7 @@ static void ata_delayed_done_timerfn(unsigned long arg) | |||
901 | scmd->scsi_done(scmd); | 901 | scmd->scsi_done(scmd); |
902 | } | 902 | } |
903 | 903 | ||
904 | /* XXX: for ata_spindown_compat */ | 904 | /* XXX: for spindown warning */ |
905 | static void ata_delayed_done(struct scsi_cmnd *scmd) | 905 | static void ata_delayed_done(struct scsi_cmnd *scmd) |
906 | { | 906 | { |
907 | static struct timer_list timer; | 907 | static struct timer_list timer; |
@@ -966,8 +966,7 @@ static unsigned int ata_scsi_start_stop_xlat(struct ata_queued_cmd *qc) | |||
966 | * removed. Read Documentation/feature-removal-schedule.txt | 966 | * removed. Read Documentation/feature-removal-schedule.txt |
967 | * for more info. | 967 | * for more info. |
968 | */ | 968 | */ |
969 | if (ata_spindown_compat && | 969 | if ((qc->dev->flags & ATA_DFLAG_SPUNDOWN) && |
970 | (qc->dev->flags & ATA_DFLAG_SPUNDOWN) && | ||
971 | (system_state == SYSTEM_HALT || | 970 | (system_state == SYSTEM_HALT || |
972 | system_state == SYSTEM_POWER_OFF)) { | 971 | system_state == SYSTEM_POWER_OFF)) { |
973 | static unsigned long warned = 0; | 972 | static unsigned long warned = 0; |
@@ -1395,7 +1394,7 @@ static void ata_scsi_qc_complete(struct ata_queued_cmd *qc) | |||
1395 | } | 1394 | } |
1396 | } | 1395 | } |
1397 | 1396 | ||
1398 | /* XXX: track spindown state for spindown_compat */ | 1397 | /* XXX: track spindown state for spindown skipping and warning */ |
1399 | if (unlikely(qc->tf.command == ATA_CMD_STANDBY || | 1398 | if (unlikely(qc->tf.command == ATA_CMD_STANDBY || |
1400 | qc->tf.command == ATA_CMD_STANDBYNOW1)) | 1399 | qc->tf.command == ATA_CMD_STANDBYNOW1)) |
1401 | qc->dev->flags |= ATA_DFLAG_SPUNDOWN; | 1400 | qc->dev->flags |= ATA_DFLAG_SPUNDOWN; |