Skip to content

NAS-123411 / None / nvme: skip optional id ctrl csi for versions less than 2.0.0#104

Merged
ixhamza merged 1 commit into
truenas/linux-6.1from
NAS-123411
Aug 17, 2023
Merged

NAS-123411 / None / nvme: skip optional id ctrl csi for versions less than 2.0.0#104
ixhamza merged 1 commit into
truenas/linux-6.1from
NAS-123411

Conversation

@ixhamza

@ixhamza ixhamza commented Aug 16, 2023

Copy link
Copy Markdown
Member

The NVME_ID_CNS_CS_CTRL command has been introduced in version 2.0.0. However, this command returns an "Invalid Field" error when executed on previous NVMe versions. In the case of CM6 devices, this error is logged on the error log page. Additionally, for CM6 drives, the reservation commands manipulated by the fenced process indirectly trigger the NVME_ID_CNS_CS_CTRL command every few seconds, leading to a periodic increment in the error count.

While these error entries are harmless, smartctl periodically increases the NVMe error counts. Smartctl displays the increase in NVMe error count due to these errors on both the console and the log file, without providing additional information. To resolve this issue, a simple solution is to skip the NVME_ID_CNS_CS_CTRL command if the version is less than 2.0.0.

@bugclerk

Copy link
Copy Markdown

@bugclerk bugclerk changed the title nvme: skip optional id ctrl csi for versions less than 2.0.0 NAS-123411 / None / nvme: skip optional id ctrl csi for versions less than 2.0.0 Aug 16, 2023
@ixhamza

ixhamza commented Aug 16, 2023

Copy link
Copy Markdown
Member Author

Scale build for this is in progress.

Comment thread drivers/nvme/host/core.c Outdated
/*
* NVME_ID_CNS_CS_CTRL is supported from
* v2.0.0 onwards.
*/

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cosmetics, but why did you need to wrap this? It would perfectly fit in 80 columns. I already have two 40" monitors I can't go much bigger to fit more in my screen. ;)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, updated.

The NVME_ID_CNS_CS_CTRL command has been introduced in version 2.0.0.
However, this command returns an "Invalid Field" error when executed
on previous NVMe versions. In the case of CM6 devices, this error is
logged on the error log page. Additionally, for CM6 drives, the
reservation commands manipulated by the fenced process indirectly
trigger the NVME_ID_CNS_CS_CTRL command every few seconds, leading
to a periodic increment in the error count.

While these error entries are harmless, smartctl periodically increases
the NVMe error counts. Smartctl displays the increase in NVMe error
count due to these errors on both the console and the log file,
without providing additional information. To resolve this issue,
a simple solution is to skip the NVME_ID_CNS_CS_CTRL command if the
version is less than 2.0.0.

Signed-off-by: Ameer Hamza <[email protected]>
@ixhamza ixhamza merged commit 7d837ac into truenas/linux-6.1 Aug 17, 2023
@ixhamza ixhamza deleted the NAS-123411 branch August 17, 2023 18:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants