At AsiaBSDCon 2016, Michael Dexter proposed “diskctl(8): A
permissively-licensed S.M.A.R.T. and raw disk command utility
framework” . 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  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
- 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