[RFC] native SMART library / tool

Chuck Tuffli chuck at tuffli.net
Mon Oct 9 18:25:26 UTC 2017


At AsiaBSDCon 2016, Michael Dexter proposed “diskctl(8): A
permissively-licensed S.M.A.R.T. and raw disk command utility
framework” [1]. While the proposal had ambitious goals, I was
specifically curious about how to report SMART attributes across SATA,
SCSI, and NVMe in a standardized way that might be useful to other
applications. After some experimentation and feedback from Michael, I
have code [2] that can retrieve SMART attributes from each of the
above protocols. The code is functional but not in its final form as I
wanted some feedback from the community first. Things which would be
useful:
 - does this work on your drive(s)?
 - is the output useful? if not, what do you need?
 - is the library interface useful? if not, what's missing / needed?

Keep in mind, the scope of the code is intentionally narrow (i.e.
retrieve SMART values), but please mention features you think would be
useful. Also note, that retrieving NVMe SMART values requires
-CURRENT.

[1] https://www.bsdcan.org/2016/schedule/attachments/339_AsiaBSDCon-diskctl.pdf
[2] https://bitbucket.org/ctuffli/smart


More information about the freebsd-scsi mailing list