On Wed, Sep 05, 2018 at 09:00:50AM +0200, Hannes Reinecke wrote:
> We should be registering the ns_id attribute as default sysfs
> attribute groups, otherwise we have a race condition between
> the uevent and the attributes appearing in sysfs.

Please give Bart credit for his work, as the lightnvm bits are almost
bigger than the rest.

> +static umode_t nvm_dev_attrs_visible(struct kobject *kobj,
> +                                  struct attribute *attr, int index)
>  {
> +     struct device *dev = container_of(kobj, struct device, kobj);
> +     struct gendisk *disk = dev_to_disk(dev);
> +     struct nvme_ns *ns = disk->private_data;
>       struct nvm_dev *ndev = ns->ndev;
> +     struct device_attribute *dev_attr =
> +             container_of(attr, typeof(*dev_attr), attr);
>  
> +     if (dev_attr->show == nvm_dev_attr_show)
> +             return attr->mode;
>  
> +     switch (ndev ? ndev->geo.major_ver_id : 0) {

How could ndev be zero here?

Reply via email to