lkml.org 
[lkml]   [2018]   [Aug]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: [PATCH 2/5] nvme: register ns_id attributes as default sysfs groups
    Date
    On Tue, 2018-08-14 at 09:33 +0200, Hannes Reinecke wrote:
    > +const struct attribute_group *nvme_ns_id_attr_groups[] = {
    > + &nvme_ns_id_attr_group,
    > + NULL, /* Will be filled in by lightnvm if present */
    > + NULL,
    > +};
    [ ... ]
    > -void nvme_nvm_unregister_sysfs(struct nvme_ns *ns)
    > -{
    > - struct nvm_dev *ndev = ns->ndev;
    > - struct nvm_geo *geo = &ndev->geo;
    > + return;
    >
    > switch (geo->major_ver_id) {
    > case 1:
    > - sysfs_remove_group(&disk_to_dev(ns->disk)->kobj,
    > - &nvm_dev_attr_group_12);
    > + nvme_ns_id_attr_groups[1] = &nvm_dev_attr_group_12;
    > break;
    > case 2:
    > - sysfs_remove_group(&disk_to_dev(ns->disk)->kobj,
    > - &nvm_dev_attr_group_20);
    > + nvme_ns_id_attr_groups[1] = &nvm_dev_attr_group_20;

    This patch introduces a really ugly dependency between the NVMe core code and
    the lightnvm code, namely that the lightnvm code has to know at which position
    in the nvme_ns_id_attr_groups it can fill in its attribute group pointer. Have
    you considered to make nvme_nvm_register_sysfs() return an attribute group
    pointer such that the nvme_ns_id_attr_groups can be changed from a global into
    a static array?

    Thanks,

    Bart.

    \
     
     \ /
      Last update: 2018-08-14 17:22    [W:4.340 / U:0.084 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site