Hi Johannes, I hope Dan and Jerry also reply but I have recently started looking at this too and have some comments below.
On 7/27/2016 6:35 AM, Johannes Thumshirn wrote: > Hi Dan and Jerry, > > I'm currently looking into SMART data retrieval on HPE NVDIMMs. > > After the first obstacle (like getting cat > /sys/class/nd/ndctl0/device/nmem0/commands reutrn smart so ndctl will issue > the ioctl) I ran into a rather nasty problem. According to [1] HPEDIMMs > need the input buffer specially crafted for SMART data, according to [2] > Intel DIMMs don't. It is unfortunate that the DSM functions are different for different NVDIMM types. There is a desire for standardization but for now this is what we have. > Adding translation functions for the DIMMs accepted commands is one thing and > should be more or less trivial for all DIMMs (I'll post an RFC patch as soon > as Linus merged Dan's 4.8 pull request so I can rebase it) but doing this > type of conversation for each and every command for every defined vendor > family for both the input and output buffers will drive us all mad I guess. In my opinion, I don't think we need ndctl to be able to issue every function and decode every response but I would like to see the --health option to report the "SMART and Health" data reported by functions 1 and 2. I could be wrong but I think that's all it does for the NVDIMMs that use the Intel example DSM. There are functions in libndctl that issue other DSMs but I don't think those aren't used by the ndctl command itself. Whether we need the other functions in libndctl to work with non-Intel DSM devices is still TBD. > Especially from the distribution's POV I'm not to keen on having customers > with some new NVDIMM family and we would need to re-implement all the > translators again. Adding a new ID is one thing but translation tables are a > totally different story. > > So the question is have I overlooked something and there is a clean and easy > solution to this problem, or not. I don't think it's clean and easy today. I think it needs to be made a bit more modular to handle the NVDIMMs that have DSMs implemented using the pass-through mode. > @Jerry have you tested SMART data retrieval with ndctl? Did it work for you? I tried it and it does not work. -- ljk > > Thanks, > Johannes > > [1] > https://github.com/HewlettPackard/hpe-nvm/blob/master/Documentation/NFIT_DSM_DDR4_NVDIMM-N_v84s.pdf > [2] http://pmem.io/documents/NVDIMM_DSM_Interface_Example-V1.2.pdf > _______________________________________________ Linux-nvdimm mailing list [email protected] https://lists.01.org/mailman/listinfo/linux-nvdimm
