Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use nsid 0 when sending NVME_ADMIN_IDENTIFY command. fixes collectd/collectd/#4127 #4128

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

viulian
Copy link

@viulian viulian commented Jul 18, 2023

ChangeLog: smart plugin: using NSID 0 when issuing the Identify Admin command, otherwise FireCuda 530 ssd logs an error.

I managed to narrow down the problem to the smart.c file using NSID 0xFFFFFFFF when sending the Identify Admin command.

Far from being an expert in NVME, I found this code https://www.smartmontools.org/static/doxygen/nvmecmds_8cpp_source.html#l00134 which sends the command using NSID argument with value 0.
This indeed causes no more problems with the FireCuda 530 hard disk adding errors when queried.

@viulian viulian requested a review from a team as a code owner July 18, 2023 17:52
@i-rinat
Copy link

i-rinat commented Jul 23, 2023

You may be interested to look into #3974.
In short: fixing get_vendor_id() may cause Linux kernel to write more data than expected, causing stack corruption.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

smart plugin causes "num_err_log_entries" to increase on a Seagate FireCuda 530 NVMe drive
2 participants