From: Damien Le Moal <dlemoal@kernel.org>
To: Igor Pylypiv <ipylypiv@google.com>
Cc: linux-ide@vger.kernel.org, Niklas Cassel <cassel@kernel.org>,
linux-scsi@vger.kernel.org,
"Martin K . Petersen" <martin.petersen@oracle.com>
Subject: Re: [PATCH 3/3] scsi: Improve CDL control
Date: Thu, 17 Apr 2025 20:08:00 +0900 [thread overview]
Message-ID: <3c8f7e2a-ba73-4943-8372-0f322aaa3935@kernel.org> (raw)
In-Reply-To: <aAB3iU7ZuQo5cH9z@google.com>
On 4/17/25 12:37, Igor Pylypiv wrote:
> On Wed, Apr 16, 2025 at 05:42:38PM +0900, Damien Le Moal wrote:
>> With ATA devices supporting the CDL feature, using CDL requires that the
>> feature be enabled with a SET FEATURES command. This command is issued
>> as the translated command for the MODE SELECT command issued by
>> scsi_cdl_enable() when the user enables CDL through the device
>> cdl_enable sysfs attribute.
>>
>> However, the implementation of scsi_cdl_enable() always issues a MODE
>> SELECT command for ATA devices when the enable argument is true, even if
>> CDL is already enabled on the device. While this does not cause any
>> issue with using CDL descriptors with read/write commands (the CDL
>> feature will be enabled on the drive), issuing the MODE SELECT command
>> even when the device CDL feature is already enabled will cause a reset
>> of the ATA device CDL statistics log page (as defined in ACS, any CDL
>> enable action must reset the device statistics).
>>
>> Avoid this needless actions (and the implied statistics log page reset)
>> by modifying scsi_cdl_enable() to issue the MODE SELECT command to
>> enable CDL if and only if CDL is not reported as already enabled on the
>> device.
>
> Hi Damien,
>
> What happens when a drive spins up with CDL enabled? Last year you sent
> a patch to make sure that CDL gets disabled by default. Is that still
> the case?
Yes, that is unchanged so that we keep being consistent with the fact that the
scsi layer starts with the sysfs cdl_enabled attribute set to false. So if an
ATA device starts with CDL enabled, it will be disabled.
That does not cause any issue with the CDL statistics log page because that page
is not persistent and cleared) on power-on-reset events and this change has no
effect on that. The CDL statistics log page will always be cleared on boot/reboot.
--
Damien Le Moal
Western Digital Research
next prev parent reply other threads:[~2025-04-17 11:08 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-16 8:42 [PATCH 0/3] CDL Feature control improvements Damien Le Moal
2025-04-16 8:42 ` [PATCH 1/3] ata: libata-scsi: Fix ata_msense_control_ata_feature() Damien Le Moal
2025-04-16 9:40 ` Niklas Cassel
2025-04-17 23:50 ` Igor Pylypiv
2025-04-18 5:39 ` Damien Le Moal
2025-04-18 7:17 ` Damien Le Moal
2025-04-16 8:42 ` [PATCH 2/3] ata: libata-scsi: Improve CDL control Damien Le Moal
2025-04-16 9:40 ` Niklas Cassel
2025-04-18 0:07 ` Igor Pylypiv
2025-04-16 8:42 ` [PATCH 3/3] scsi: " Damien Le Moal
2025-04-16 9:41 ` Niklas Cassel
2025-04-17 3:37 ` Igor Pylypiv
2025-04-17 11:08 ` Damien Le Moal [this message]
2025-04-18 0:09 ` Igor Pylypiv
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3c8f7e2a-ba73-4943-8372-0f322aaa3935@kernel.org \
--to=dlemoal@kernel.org \
--cc=cassel@kernel.org \
--cc=ipylypiv@google.com \
--cc=linux-ide@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox