Messages in this thread | | | Date | Mon, 11 Sep 2023 15:29:34 -0400 | Subject | Re: [PATCH] nvme: prevent id ctrl csi for specs below 2.0 | From | Alexander Motin <> |
| |
On 11.09.2023 14:40, Keith Busch wrote: > On Mon, Sep 11, 2023 at 02:26:41AM +0500, Ameer Hamza wrote: >> The 'id ctrl csi' command was introduced in version 2.0, as specified >> in Section 5.17.2.6 of the NVME Base Specification 2.0. Executing this >> command on previous NVMe versions returns an "Invalid Field" error, >> and the error entry is saved in the log page. Although, Commit >> c917dd96fe41 ("nvme: skip optional id ctrl csi if it failed") reduced >> the error occurrences, but the error persisted during the initial >> module load. This patch ensures the command isn't executed on versions >> older than 2.0, and it also eliminates the skip implementation because >> NVME_ID_CNS_CS_CTRL is expected to succeed with version 2.0. > > NVMe TP's are allowed to be implemented by versions lower than the > release that first included it. I recall the first nvme controller I'd > seen that implemented this identification reported itself as 1.4.
Then there must be a way to detect it. How otherwise it is not a standard violation to send arbitrary effectively vendor-specific commands to a drive?
-- Alexander Motin
| |