diff options
author | Tom Yan <tom.ty89@gmail.com> | 2016-07-12 15:37:02 +0200 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2016-07-12 16:52:49 +0200 |
commit | 0c12735e8abf4734b011aec979092db5e63556b0 (patch) | |
tree | 897c3d5a9ac676ee834349e5bc411cb01679d969 /drivers/ata | |
parent | libata-scsi: set correct VERSION field for ZAC devices (diff) | |
download | linux-0c12735e8abf4734b011aec979092db5e63556b0.tar.xz linux-0c12735e8abf4734b011aec979092db5e63556b0.zip |
libata-scsi: fix SET FEATURES "filtering" for ata_msense_caching()
Without this fix, the DRA bit of the caching mode page would not
be updated when the read look-ahead feature is toggled (e.g. with
`smartctl --set`), but will only be until, for example, the write
cache feature is touched.
Signed-off-by: Tom Yan <tom.ty89@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'drivers/ata')
-rw-r--r-- | drivers/ata/libata-core.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c index 6be7770f68e9..077daf0d2604 100644 --- a/drivers/ata/libata-core.c +++ b/drivers/ata/libata-core.c @@ -5127,7 +5127,9 @@ void ata_qc_complete(struct ata_queued_cmd *qc) switch (qc->tf.command) { case ATA_CMD_SET_FEATURES: if (qc->tf.feature != SETFEATURES_WC_ON && - qc->tf.feature != SETFEATURES_WC_OFF) + qc->tf.feature != SETFEATURES_WC_OFF && + qc->tf.feature != SETFEATURES_RA_ON && + qc->tf.feature != SETFEATURES_RA_OFF) break; /* fall through */ case ATA_CMD_INIT_DEV_PARAMS: /* CHS translation changed */ |