[PATCH] NVMe:Expose model attribute in sysfs
Matthew Wilcox
willy at linux.intel.com
Tue Aug 25 08:38:54 PDT 2015
On Tue, Aug 25, 2015 at 10:24:39AM +0530, Sujith Pandel wrote:
> @@ -2360,6 +2360,7 @@ static int nvme_dev_add(struct nvme_dev *dev)
> dev->vwc = ctrl->vwc;
> memcpy(dev->serial, ctrl->sn, sizeof(ctrl->sn));
> memcpy(dev->model, ctrl->mn, sizeof(ctrl->mn));
> + dev->model[sizeof(ctrl->mn) - 1] = '\0';
> memcpy(dev->firmware_rev, ctrl->fr, sizeof(ctrl->fr));
> if (ctrl->mdts)
> dev->max_hw_sectors = 1 << (ctrl->mdts + shift - 9);
You've overwritten the last byte of the model name with a NUL byte. There
could be useful information in that byte.
> +/* Expose model name in sysfs */
> +static ssize_t nvme_sysfs_model(struct device *dev,
> + struct device_attribute *attr, char *buf)
> +{
> + struct nvme_dev *ndev = dev_get_drvdata(dev);
> +
> + return sprintf(buf, "%s\n", ndev->model);
Instead, how about:
return sprintf(buf, "%.40s\n", ndev->model);
More information about the Linux-nvme
mailing list