From: Igor Pylypiv Date: Thu, 11 Apr 2024 20:12:24 +0000 (+0000) Subject: ata: libata-core: Allow command duration limits detection for ACS-4 drives X-Git-Tag: v6.6.28~120 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=99618f8a7216a07b83bb0dcf9de92d0deed46595;p=thirdparty%2Fkernel%2Fstable.git ata: libata-core: Allow command duration limits detection for ACS-4 drives commit c0297e7dd50795d559f3534887a6de1756b35d0f upstream. Even though the command duration limits (CDL) feature was first added in ACS-5 (major version 12), there are some ACS-4 (major version 11) drives that implement CDL as well. IDENTIFY_DEVICE, SUPPORTED_CAPABILITIES, and CURRENT_SETTINGS log pages are mandatory in the ACS-4 standard so it should be safe to read these log pages on older drives implementing the ACS-4 standard. Fixes: 62e4a60e0cdb ("scsi: ata: libata: Detect support for command duration limits") Cc: stable@vger.kernel.org Signed-off-by: Igor Pylypiv Signed-off-by: Damien Le Moal Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c index f12beeb96629d..a492f23faa877 100644 --- a/drivers/ata/libata-core.c +++ b/drivers/ata/libata-core.c @@ -2493,7 +2493,7 @@ static void ata_dev_config_cdl(struct ata_device *dev) bool cdl_enabled; u64 val; - if (ata_id_major_version(dev->id) < 12) + if (ata_id_major_version(dev->id) < 11) goto not_supported; if (!ata_log_supported(dev, ATA_LOG_IDENTIFY_DEVICE) ||